2012-05-07 14 views
5

इसने मुझे कुछ समय तक चकमा दिया है, लेकिन मैं इसे आगे बढ़ाने में कामयाब रहा। दुर्भाग्यवश, समय आ गया है मुझे वास्तव में इसकी आवश्यकता है।क्या एम्बरजेएस के पास एक ईवेंट है जिसे हैंडलबार्स-व्यू के बाद बुलाया गया है?

मेरा प्रश्न है: क्या एम्बरजेएस/हैंडलबार्स एक ऐसी घटना की पेशकश करते हैं जिसे एक दृश्य अपडेट किया जाता है और डोम में दिखाई देता है?

मुझे इस घटना का उपयोग कुछ jQuery सामग्री जैसे addClass, sortable, आदि चलाने के लिए करने की आवश्यकता है। मैंने लाइव jQuery प्लगइन का उपयोग करने का प्रयास किया है लेकिन यह हैंडलबार के साथ काम नहीं करता है। उस पर मैं मानता हूं कि घटना पहले से ही कहीं भी है, मुझे बस यह प्रतीत नहीं होता है।

उत्तर

7

क्या आपने , didInsertElement, और willRerenderEmber.View में विधियों को देखा है? इसके अलावा, एसओ पर यहां बहुत सारे पोस्ट हैं। एम्बर के साथ jQuery प्लगइन्स और ढांचे को एकीकृत करने के साथ यह सौदा।

https://github.com/emberjs/ember.js/blob/master/packages/ember-views/lib/views/view.js#L1250-1267

संपादित करें/अद्यतन

एक छोटे से वापस और चौथे टिप्पणी में करने के बाद, अंतिम समाधान Ember.run.next उपयोग करने के लिए किया गया था। देखें: http://jsfiddle.net/ud3323/SsRuX/

+0

मैंने उनको देखा, इन घटनाओं के साथ समस्या यह है कि 'willInsertElement' और' didInsertElement' को केवल एक बार बुलाया जाता है जब 'apendTo' का उपयोग करके डीओएम में जोड़ा गया दृश्य, अद्यतन होने पर नहीं। 'रेंडरर' वास्तव में आग लगती है, लेकिन डीओएम में कुछ भी जोड़ा जाने से पहले, jQuery कॉलिंग कॉल करने से कुछ भी नहीं होता है। –

+0

क्या आपको स्टैक ओवरफ्लो पर पोस्ट की गई पोस्ट के लिंक होंगे? –

+0

'बाद में' के बारे में क्या? दृश्य अपडेट कैसे किया जा रहा है? क्या यह एक संपत्ति परिवर्तन है? यदि ऐसा है तो आपको बस उस संपत्ति का निरीक्षण करने की आवश्यकता है। क्या यह कुछ घटना है, जैसे कि माउस इवेंट? क्या आपके पास कोई कोड है जिसे आप साझा कर सकते हैं? यह वास्तव में आपको सही दिशा में इंगित करने में मदद करेगा ... –

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