2012-09-12 7 views
6

BoilerplateJs उदाहरण के संबंध में, उपयोगकर्ता को एक मॉड्यूल में कोई बदलाव करने के बाद, इन मॉड्यूल को इस तरह से एक-दूसरे से बदलने के लिए कैसे समायोजित करना चाहिए, अन्य संबंधित मॉड्यूल को उस परिवर्तन के साथ अपडेट किया जाना चाहिए।क्या बॉयलरप्लेट्स में मॉड्यूल के साथ संवाद करने का कोई तरीका है?

उदाहरण के लिए, अगर वहाँ नाम और बिक्री और एक मेज या एक ग्राफ में उन लोगों को पुनः प्राप्त डेटा को अद्यतन करने के लिए एक मॉड्यूल के रूप में उपयोगकर्ता से इनपुट प्राप्त करने के लिए मॉड्यूल, आप कुछ उदाहरण, कैसे उन इंटर कनेक्शन पर विचार घटना होती है साथ व्याख्या कर सकते हैं है से निपटने?

धन्यवाद !!

उत्तर

3

BoilerplateJS में, आपके प्रत्येक मॉड्यूल में इसका अपना मॉड्यूल कॉन्टेक्स्ट ऑब्जेक्ट होगा। इस मॉड्यूल संदर्भ ऑब्जेक्ट में दो विधियां 'सुनो' और 'सूचित करें' शामिल हैं। अधिक जानकारी के लिए '/src/core/context.js' पर संदर्भ वर्ग पर एक नज़र डालें।

इस घटक को 'सुनने' की आवश्यकता वाले घटक को ईवेंट और कॉलबैक हैंडलर का नाम निर्दिष्ट करके ईवेंट के लिए पंजीकरण करना चाहिए। घटना को बढ़ाने वाले घटक को दूसरों को दिलचस्प कुछ जानने के लिए 'अधिसूचना' विधि का उपयोग करना चाहिए (वैकल्पिक रूप से पैरामीटर पास करना)।

GitHub से नवीनतम BoilerplateJS कोड का एक अद्यतन प्राप्त करें। मैंने क्लिककॉन्टर को एक समग्र घटक बनाने में बदलाव किए हैं, जहां 'क्लिकमे घटक' एक घटना को बढ़ा रहा है और 'लॉटरी घटक' प्रतिक्रिया देने के लिए घटना को सुन रहा है।

कोड घटना अधिसूचित करने के लिए: इवेंट सुनने के लिए

moduleContext.notify('LOTTERY_ACTIVITY', this.numberOfClicks()); 

कोड: //:

moduleContext.listen("LOTTERY_ACTIVITY", function(activityNumber) { 
    var randomNum = Math.floor(Math.random() * 3) + 1; 
    self.hasWon(randomNum === activityNumber); 
}); 
+0

btw .. BoilerplateJS [pubsub.js] (के https एक थोड़ा संशोधित संस्करण का उपयोग करता github.com/federico-lox/pubsub.js) दृश्य के पीछे फेडेरिको लुसीग्नानो से कार्यान्वयन। – Hasith

0

मैं Amplify जैसे प्रकाशित-सदस्यता लाइब्रेरी का उपयोग करना चाहता हूं। इस तकनीक का उपयोग करना एक मॉड्यूल के लिए घटनाओं के प्रकाशक के रूप में कार्य करना और दूसरों को सब्सक्राइबर्स के रूप में पंजीकृत करना, इन घटनाओं को अत्यधिक निराशाजनक ढंग से सुनना और प्रतिक्रिया देना आसान है।

जैसा कि आप पहले से ही नॉकआउट का उपयोग कर रहे हैं, आप पहले रयान निमेयर की knockout-postbox प्लगइन को आजमाने में रुचि रखते हैं। इस लाइब्रेरी पर अधिक पृष्ठभूमि available here है जिसमें a demo fiddle शामिल हैं। यदि आपको आवश्यकता हो तो आप हमेशा बाद में एम्पलीफाइफ़ पर स्विच कर सकते हैं।

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

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