我有一个带有如下所示路线的jsfiddle ,它与emberjs 指南中的路线完全相同,当我单击附加到{{post.title}}的#linkTo 助手时,它应该向我显示单个帖子,但它没有,而是控制台显示此错误:
未捕获的错误:断言失败:无法在未定义的对象上调用带有“id”的 get。
此外,当我单击主页上的帖子链接时,它会显示所有标题,但在控制台中,它也会显示此错误:
未捕获的错误:您所做的某事导致视图在渲染后但在插入 DOM 之前重新渲染。
EmBlog.Router.map(function() {
this.resource("posts", function(){
this.route('show', {path: '/:post_id'}) ;
});
});
<script type="text/x-handlebars" data-template-name="posts/index">
{{#each post in content}}
<p>{{#linkTo 'posts.show' post}} {{post.title}} {{/linkTo}}</p>
{{/each}}
</script>
我查看了这个提交,它添加了对字符串文字的支持作为 {{linkTo}} 的参数,特别是来自该提交的以下建议:
现在,Ember 允许您将字符串文字指定为参数。{{#linkTo post popular}}将在当前上下文中查找“流行”属性并生成一个指向具有该 ID 的模型的 URL。而{#linkTo post "popular"}}会将字符串文字 "popular" 视为模型。