2012-06-11 2 views
5

Я пытаюсь связать Ember.TextFieldvalue с его родительским представлением. Этот код работал до обновления до последней версии ember. Я читал о новой области обзора, но не могу понять, применимо ли/как это.Значение Ember.TextFieldBinding для 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"

Я знаю, что могу дать TextField a viewName и привязаны к этому изнутри MyView, но я хочу знать, почему предыдущий метод прекратил работать.

Update:

ответ

8

Я обновил свой jsFiddle работать: http://jsfiddle.net/U3thg/23/

Я только что изменил ваш valueBinding к "view.theValue".

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

я поклялся бы я попробовал это. Благодаря! –

4

Чтобы ответить на вопрос, почему предыдущий метод прекратил работу. Я думаю, что команда ember изменила связанный контекст в шаблонах. Теперь я думаю, что текущий контекст - это контроллер, прикрепленный к закрывающему виду.

Я вывел @ebryn скрипку:

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

+1

Я обновил свой вопрос с соответствующими ссылками. –

+0

+1 за вопрос, эти ссылки очень полезны, и подтвердите, что я сказал. Большое спасибо. –

Смежные вопросы