Javascript Ember.js-仅转换模板显示以使用视图
我只是从Ember.js开始。我有余烬数据与我的Rails后端对话,目前正在使用基本的把手模板显示数据。数据正在按其应有的方式呈现。coffescript中的当前代码如下所示: 型号:Javascript Ember.js-仅转换模板显示以使用视图,javascript,ember.js,coffeescript,handlebars.js,jquery-masonry,Javascript,Ember.js,Coffeescript,Handlebars.js,Jquery Masonry,我只是从Ember.js开始。我有余烬数据与我的Rails后端对话,目前正在使用基本的把手模板显示数据。数据正在按其应有的方式呈现。coffescript中的当前代码如下所示: 型号: App.Post = DS.Model.extend title: DS.attr('string') text: DS.attr('string') imageUrl: DS.attr('string') 路由: App.Router.map-> @路由“posts”,路径:'/' App.Pos
App.Post = DS.Model.extend
title: DS.attr('string')
text: DS.attr('string')
imageUrl: DS.attr('string')
路由:
App.Router.map->
@路由“posts”,路径:'/'
App.PostsRoute = Ember.Route.extend
model: -> App.Post.find()
立柱、把手:
<div id="masonry-container" class="transitions-enabed infinite-scroll clearfix centered">
{{#each controller}}
<div class="col2 box">
<h3>{{title}}
<img {{bindAttr src="imageUrl"}} >
<p class="text">
{{text}}
</p>
</div>
{{/each}}
</div>
<div id="masonry-container" class="transitions-enabed infinite-scroll clearfix centered">
{{#each controller.content}}
<div class="col2 box">
<h3>{{title}}
<img {{bindAttr src="imageUrl"}} >
<p class="text">
{{text}}
</p>
</div>
{{/each}}
</div>
该模板将在整个应用程序中的多个位置使用。它还使用了砖石结构,在呈现内容后需要对其进行初始化,最后我需要实现infinte滚动,尽管这有点超前了
现在,我想采取上述措施,并为其创建一个视图。到目前为止,我已经尝试了以下方法
路由:
App.Router.map ->
@route 'posts', path: '/'
App.PostsRoute = Ember.Route.extend
setupController: ->
@controllerFor('posts').set('content'. App.Content.find())
控制器:
App.PostsController = Ember.ArrayController.extend()
视图:
模板:
app_把手布局图
{{outlet}}
...layout mark up...
<div id="container">
{{yield}}
</div>
...more layout mark up...
{{view App.PostsView}}
使用此代码,布局呈现,但所有帖子都不呈现。控制器的内容属性似乎没有设置,但我不确定是否遗漏了其他内容。任何帮助都将不胜感激。我解决了这个问题。问题在于调用
{{view App.PostsView}
。将我的application.handlebar更改回使用{{outlet}
解决了问题。似乎尝试显式渲染视图会导致问题,而且通过使用正确的命名约定定义视图,Ember将自动拾取该视图。事后看来,考虑到余烬的方式,这是很有意义的。我发现了这一点。问题在于调用{{view App.PostsView}
。将我的application.handlebar更改回使用{{outlet}
解决了问题。似乎尝试显式渲染视图会导致问题,而且通过使用正确的命名约定定义视图,Ember将自动拾取该视图。事后看来,考虑到余烬的方式,这是很有意义的
{{view App.PostsView}}