Ember.js html 标签中的 {{#each}} 值?
Ember.js {{#each}} value in html tag?
所以我正在使用 Ember.js 每个助手,但我无法将值放在我想要的地方。
这是我希望 html 的样子。
<div id="item0">
item0Value
</div>
但我不知道如何在车把模板中写这个。
这是我试过的。
{{#each item in array}}
<div id="item{{item.id}}">
{{item.value}}
</div>
{{/each}}
这给了我一个错误。
Uncaught Error: Assertion Failed: An error occured while setting up template bindings. Please check for invalid markup or bindings within HTML comments.
有没有办法在这里做我想做的事?还是不能将值放在 html 标签内?
来自ember/guides:
It is often useful to specify a controller to decorate individual
items in the ArrayController while iterating over them. This can be
done by creating an ObjectController:
您可以使用项目控制器生成您需要的值,然后在您的模板中访问它们:
{{#each item in array itemController="song"}}
<div {{bind-attr="item.cssId"}}>
{{item.value}}
</div>
{{/each}}
// controllers/song
App.SongController = Ember.ObjectController.extend({
cssId: function() {
return 'item' + this.get('id');
}.property('id')
...
注意:作为最佳实践,最好在模板中声明 itemController
,而不是直接在 ArrayController
中声明
所以我正在使用 Ember.js 每个助手,但我无法将值放在我想要的地方。
这是我希望 html 的样子。
<div id="item0">
item0Value
</div>
但我不知道如何在车把模板中写这个。
这是我试过的。
{{#each item in array}}
<div id="item{{item.id}}">
{{item.value}}
</div>
{{/each}}
这给了我一个错误。
Uncaught Error: Assertion Failed: An error occured while setting up template bindings. Please check for invalid markup or bindings within HTML comments.
有没有办法在这里做我想做的事?还是不能将值放在 html 标签内?
来自ember/guides:
It is often useful to specify a controller to decorate individual items in the ArrayController while iterating over them. This can be done by creating an ObjectController:
您可以使用项目控制器生成您需要的值,然后在您的模板中访问它们:
{{#each item in array itemController="song"}}
<div {{bind-attr="item.cssId"}}>
{{item.value}}
</div>
{{/each}}
// controllers/song
App.SongController = Ember.ObjectController.extend({
cssId: function() {
return 'item' + this.get('id');
}.property('id')
...
注意:作为最佳实践,最好在模板中声明 itemController
,而不是直接在 ArrayController