2017-03-23 26 views
5

मुझे अपने आवेदन के साथ कोई समस्या नहीं है या कुछ क्रियाओं को प्रेषित नहीं किया जा रहा है जब कोई कार्रवाई भेजी जाती है (ngrx effect not being called when action is dispatched from component देखें)।एनजीआरएक्स स्टोर, क्रियाओं और प्रभावों को डीबग या निरीक्षण करना कैसे संभव है?

मैं जानना चाहता हूं कि एनजीआरएक्स स्टोर, क्रियाओं और प्रभावों को कैसे डिबग करना है।

चूंकि ngrx के लिए टाइपस्क्रिप्ट स्रोत मेरे पर्यावरण पर उपलब्ध नहीं हैं (केवल टाइपिंग उपलब्ध हैं), क्या स्टोर और प्रभाव में क्या हो रहा है यह जानने के अन्य तरीके हैं?

पीएस ऐसा लगता है कि देव स्टोर उपकरण केवल reducers के कारण परिवर्तन देखने की अनुमति देते हैं।

+0

यह एक बहुत ही उपयोगी टूल है: https://github.com/zalmoxisus/redux-devtools-extension – balteo

उत्तर

1

जैसा कि आपने पाया, रेडक्स डेवटोल्स एक्सटेंशन ngrx में स्टोर गतिविधि की निगरानी करने का एक आसान तरीका है। हालांकि, यह सभी प्रेषित कार्यों को रिकॉर्ड करता है, जिनमें एनजीआरएक्स प्रभाव से उत्सर्जित होते हैं, भले ही रेड्यूसर स्टोर को अपडेट करने के लिए कार्य करते हैं या नहीं। यदि आप प्रभाव से भेजे गए कार्यों को नहीं देख रहे हैं, तो कुछ और उनके प्रेषण को रोकने में समस्या है।

एनजीआरएक्स प्रभाव और स्टोर सदस्यता सहित सामान्य रूप से अवलोकन श्रृंखलाओं को अस्थायी रूप से डीबग करने का एक आसान तरीका .do() ऑपरेटरों के पहले और/या कोड के बाद जो काम नहीं करता है, के माध्यम से है। यह इसके चारों ओर कोड के प्रवाह को परेशान नहीं करता है, और यह आपको लॉगिंग का पता लगाने या निरीक्षण के लिए ब्रेकपॉइंट जोड़ने देता है।

कुछ लोगों को कस्टम ऑपरेटरों में .do() प्रवेश लपेट, और यहां तक ​​कि उन्हें मैन्युअल रूप से हर जगह लेखन से बचने के लिए अनुरेखण के लिए ऑपरेटरों के बीच .do() प्रविष्टि को स्वचालित करने का प्रयास कर रहे हैं। मैं इसे सरल रखना चाहता हूं, और मैन्युअल रूप से उन्हें अस्थायी रूप से डालना पसंद करता हूं जब विशिष्ट ब्लॉक डीबग करना इतना बुरा नहीं है IMHO।

संबंधित मुद्दे