Javascript 在Ember.js中实现accordian类型视图
在一个玩具应用程序中,我有一个显示所有帖子标题的“帖子”模板。当你点击每一个标题,而不是指向一个“显示”视图时,我想直接内联展开文章的其余内容 我已经考虑过让Javascript 在Ember.js中实现accordian类型视图,javascript,ember.js,conventions,Javascript,Ember.js,Conventions,在一个玩具应用程序中,我有一个显示所有帖子标题的“帖子”模板。当你点击每一个标题,而不是指向一个“显示”视图时,我想直接内联展开文章的其余内容 我已经考虑过让postRoute重用postsRoute,并设置一个标志,然后在车把模板中检查该标志,以显示其余的帖子内容 首选的“Ember-ish”方法是什么,可以让资源的单一视图与其索引视图在正确的位置内联呈现?我建议在PostsController上定义一个itemController,它可以对单个post对象执行操作。 然后,在模板中定义在it
postRoute
重用postsRoute
,并设置一个标志,然后在车把模板中检查该标志,以显示其余的帖子内容
首选的“Ember-ish”方法是什么,可以让资源的单一视图与其索引视图在正确的位置内联呈现?我建议在
PostsController
上定义一个itemController
,它可以对单个post对象执行操作。
然后,在模板中定义在itemController上切换属性的操作(例如toggleBody)。您可以使用此属性显示或隐藏每篇文章的正文:
App.PostsController = Ember.ArrayController.extend
itemController: 'post'
App.PostController = Ember.ObjectController.extend
showBody: no
actions:
toggleBody: ->
@toggleProperty('showBody')
return false
<script type="text/x-handlebars" data-template-name="posts">
<ul>
{{#each}}
<li>{{title}} <span {{action toggleBody}} class='label'>Toggle</span>
{{#if showBody}}
<div>{{body}}</div>
{{/if}}
</li>
{{/each}}
</ul>
</script>
App.PostsController=Ember.ArrayController.extend
itemController:“发布”
App.PostController=Ember.ObjectController.extend
展品:没有
行动:
切换主体:->
@toggleProperty('showBody')
返回错误
{{{#各}
- {{title}}切换
{{{#如果展示体}
{{body}}
{{/if}
{{/每个}}
另请参阅,以获得一个有效的演示