Ember.Js:如何使用Model Property链接回TextField

时间:2013-07-17 15:13:06

标签: ember.js

我有模特:

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中的文字没有被更改。

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

1 个答案:

答案 0 :(得分: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>

另外值得一提的是,如果您在视图中没有与do相关的渲染,则无需定义。

希望它有所帮助。