我在使用ember.js时遇到了麻烦。使用以下路由设置我无法获得条目/新路由。索引工作正常但条目/新模板只是拒绝呈现。我认为这是我试图在renderTemplate中渲染视图的地方,但我不确定我做错了什么。非常感谢您的帮助。
Journal.Router.map ->
@resource 'entries', {path: '/' }, ->
@route 'new'
return
return
Journal.EntriesNewRoute = Ember.Route.extend
renderTempalte: ->
@render 'entriesNew', {
into: 'application'
}
setupController: (controller) ->
controller.set 'heading', 'new entry'
return
Journal.EntriesNewView = Ember.View.extend
className: ['entries-new']
templateName: 'entries/new'
Journal.EntriesNewController = Ember.Controller.extend
heading: "New Journal Entry"
createEntry: ->
title = @get 'newTitle'
content = @get 'newContent'
if !title.trim() and !content.trim() then return null
Journal.Entry.createRecord
title: title
content: content
@get('store').commit()
return
条目/新模板
{{ heading }}
{{view Ember.TextField id="entry-title" placeholder="Enter a title" valueBinding="newTitle"}}
{{view Ember.TextArea id="entry-content" placeholder="What do you have to say?" valueBinding="newContent"}}
<button {{action "createEntry"}} class="save">Save</button>
答案 0 :(得分:2)
在您的路线中,'into'应定位到包含{{outlet}}
的路线renderTempalate: ->
@render 'entriesNew', {
into: 'entries'
}
虽然renderTemplate hook的默认操作是渲染到它的资源插座中,但只要你的Entries模板中有{{outlet}}且你遵守严格的命名约定,你就不需要定义那个钩子了一点都不。
如果不是问题可能会发布您的参赛作品模板