ember {{input}}帮助程序无法正常工作

时间:2014-01-07 17:22:34

标签: javascript ember.js

我不能为我的生活弄清楚为什么这不起作用。也许这很明显,但我一直都在盯着它看。

我希望{{input}}预先填充了Title的值,标签会被正确填写...

    <ul>
      {{#each}}
        <li>
        {{input type="text" value=Title }}
          <label>{{Title}}</label>
        </li>
      {{/each}}
    </ul>

这是一个Gist

这是javascript:

window.App = Ember.Application.create({
  LOG_TRANSITIONS: true
});

App.ApplicationAdapter = DS.FixtureAdapter.extend();

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

App.KidsRoute = Ember.Route.extend({
    model: function () {
        return this.store.find('Kid');
    }
});

App.Kid = DS.Model.extend({
    Title: DS.attr('string'),
    Age: DS.attr('number')
});

App.Kid.FIXTURES = [    
  {        
    id: 0,        
    Age: 5,        
    Title: "Joe"    
  },    
  {        
    id: 1,        
    Age: 9,        
    Title: "Max"    
  }
];

1 个答案:

答案 0 :(得分:1)

{{input}}似乎有一点错误。问题是所有权是资本化的。我让它在这个bin中工作。 我建议始终用小写字母开始你的属性名称。这是某种约定。大多数情况下,你会遇到与你相反的风格。

这些是我为使其发挥作用而做出的改变:

1 - 为title添加别名,该别名不是大写的:

App.Kid = DS.Model.extend({
    Title: DS.attr('string'),
    Age: DS.attr('number'),
    title : Ember.computed.alias("Title")
});

2 - 将无法使用的版本与帮助者一起使用:

{{input type="text" value=title }}