在Ember.js中动态设置元素id
我有一个从FIXTURES数据存储加载的项目列表:在Ember.js中动态设置元素id,ember.js,ember-data,Ember.js,Ember Data,我有一个从FIXTURES数据存储加载的项目列表: App.ItemsController = Ember.ArrayController.extend({ content: function() { return App.Item.find(); }.property('content') }); App.Item = DS.Model.extend({ name: DS.attr('string') }); App.Item.FIXTURES =
App.ItemsController = Ember.ArrayController.extend({
content: function() {
return App.Item.find();
}.property('content')
});
App.Item = DS.Model.extend({
name: DS.attr('string')
});
App.Item.FIXTURES = [
{id: 1, name: 'Item 1'},
{id: 2, name: 'Item 2'},
{id: 3, name: 'Item 3'},
{id: 4, name: 'Item 4'},
{id: 5, name: 'Item 5'},
{id: 6, name: 'Item 6'},
{id: 7, name: 'Item 7'},
{id: 8, name: 'Item 8'},
{id: 9, name: 'Item 9'},
{id: 10, name: 'Item 10'}
];
我有一个简单的模板
<script type="text/x-handlebars" data-template-name="items">
<ul>
{{#each item in content}}
<li {{bindAttr id="elementId"}} > {{item.name}}</li>
{{/each}}
</ul>
</script>
出于各种项目特定的原因,我使用{render'items'}来显示它
我遇到的问题是,我想动态地将每个li的id设置为item id,其中id是模型中的项id。我尝试了我能想到的所有计算属性组合来设置elementId,但我无法让它工作
有办法做到这一点吗?任何帮助都将不胜感激。谢谢。您可以在模型中设置计算属性,然后在bindAttr帮助程序中使用该属性 车把:
<script type="text/x-handlebars" data-template-name="items">
<ul>
{{#each item in content}}
<li {{bindAttr id="item.elementId"}} > {{item.name}}</li>
{{/each}}
</ul>
</script>
您可以在模型中设置计算属性,然后在bindAttr帮助器中使用该属性 车把:
<script type="text/x-handlebars" data-template-name="items">
<ul>
{{#each item in content}}
<li {{bindAttr id="item.elementId"}} > {{item.name}}</li>
{{/each}}
</ul>
</script>
你真棒。谢谢,你太棒了。非常感谢。