[英]EmberJS linkTo nested resource is re-rendering the parent view
我正在尝试创建一个简单的界面,该界面的左侧是从AJAX调用中检索到的链接列表,单击该链接时,将在右侧的{{outlet}}中打开其中的数据,并从另一个AJAX检索到该数据通过该链接致电。 这些是我的路线:
App.Router.map(function() {
this.resource('about');
this.resource('subreddit', { path: 'subreddit/:subreddit_name' }, function() {
this.resource('comments', { path: 'comments/:id' })
});
});
因此,我有一个基于:subreddit_name的动态链接列表,其结构如下:
subreddit/:subreddit_name/comments/:id
要创建链接,我具有以下代码块:
<script type="text/x-handlebars" id="subreddit">
<div>
{{#each item in model}}
{{#linkTo 'comments' item.subreddit item.id classNames="list-group-item"}}
<img class="media-object" {{bindAttr src="item.thumbnail"}} class="img-rounded">
{{item.author}}
{{/linkTo}}
{{/each}}
</div>
<div>{{outlet}}</div>
</script>
链接已正确纠正,但是,在我将:subreddit_name动态路由插入到路由器后,当我单击链接时,它将重新呈现整个模板,而不是仅重新呈现注释模板:
<script type="text/x-handlebars" id="comments">
{{#each item in model}}
<div class="panel panel-info mypanel">
<div class="panel-heading">{{item.author}}</div>
<div class="panel-body">
<p>{{{item.body}}}</p>
</div>
</div>
{{/each}}
</script>
我在EmberJS上还是很环保的,这就是为什么我想提出一些建议/评论来纠正此问题。
提前致谢!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.