1

我有模型:

App.Wizard = Em.Object.extend({
    title:'example',   
});

我有视图:

var wizardView = Ember.View.create({
    templateName: 'wizard'  

});

模板如下所示:

<script type="text/x-handlebars" data-template-name="wizard">
    <label>
       <span>Title</span>
          {{view Ember.TextField valueBinding="App.Wizard.title" }}
     </label>
</script>

在页面上,我可以看到来自我的模型的文本输入,但是当我更改输入文本时,App.Wizard.title 中的 vulue 没有被更改。

如何连接输入到模型字段?

4

1 回答 1

1

请参阅此处的工作示例: http: //jsbin.com/aqetef/3/edit 尝试更改输入字段中的文本并在下面的标签中看到它的更新。

基本上这是代码:

App.Wizard = Em.Object.extend({
  title:'example'
});

App.Router.map(function() {
  this.resource('wizard', {path: '/'});
});

App.WizardRoute = Ember.Route.extend({
  model: function() {
    return App.Wizard.create({title: 'Foo'});
  }
});

而且由于我们现在为渲染视图/模板提供模型对象,您可以使用实际上下文定义绑定,该上下文是创建的新模型对象。

<script type="text/x-handlebars" data-template-name="wizard">
  <label>
    <span>Title</span>
      {{view Ember.TextField valueBinding="title"}}
  </label>
  <hr/>
  {{title}}
</script>

另外值得一提的是,如果您的视图中没有与渲染相关的内容,则不需要定义一个。

希望能帮助到你。

于 2013-07-17T15:25:32.810 回答