2012-06-11 10 views
5

पर बाध्यकारी मैं Ember.TextField के value को इसके मूल दृश्य में किसी संपत्ति को बांधने की कोशिश कर रहा हूं। यह कोड एम्बर के नवीनतम संस्करण में अपग्रेड करने से पहले काम करता था। मैंने नए दृश्य स्कोपिंग के बारे में पढ़ा है लेकिन यह पता नहीं लगा सकता कि यह कैसे/कैसे लागू होता है।Ember.TextField value parentView

खाका my-template:

Input: {{view Ember.TextField valueBinding="theValue" }} 

दृश्य:

App.MyView = Em.View.extend({ 
    templateName: 'my-template', 
    theValue: null, 
    init: function(){ 
     this._super(); 
     this.set('theValue',''); 
    }, 
    keyDown: function(e){ 
     if(e.keyCode === 13){ 
      alert(this.get('theValue')); 
     } 
    } 
});​ 

jsFiddle: demo

मैं "parentView.theValue" और "view.parentView.theValue"

की कोशिश की है मैं जानता हूँ कि मैंदे सकते हैं 210 ए viewName और MyView के अंदर से बांधें लेकिन मैं जानना चाहता हूं कि पिछली विधि क्यों काम करना बंद कर दी गई।

अद्यतन:

उत्तर

8

मैं काम करने के लिए अपने jsFiddle नवीनीकृत किया है: http://jsfiddle.net/U3thg/23/

मैं सिर्फ अपने valueBinding"view.theValue" को बदल दिया है।

{{view Ember.TextField valueBinding="view.theValue" }} 
+0

मैं शपथ ली है | मुझे लगता है कि कोशिश की:

मैं @ebryn बेला ली गई। धन्यवाद! –

4

आपको यह जवाब देने के लिए कि पिछली विधि क्यों काम करना बंद कर दी गई है। मुझे लगता है कि एम्बर की टीम ने टेम्पलेट्स में बाध्य संदर्भ बदल दिया। अब मुझे लगता है कि वर्तमान संदर्भ संलग्न दृश्य से जुड़ा नियंत्रक है।

http://jsfiddle.net/Sly7/tcvhB/

+1

मैंने प्रासंगिक प्रश्नों के साथ अपना प्रश्न अपडेट किया। प्रश्न के लिए –

+0

+1, ये लिंक बहुत उपयोगी हैं, और मैंने जो कहा है उसकी पुष्टि करें। बहुत बहुत धन्यवाद। –

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