我无法理解Ember.js路由的工作原理,特别是如何使用路径中的动态段。
例如,如果您想从重置密码页面中获取令牌并在表单提交中使用该令牌,您将如何获得令牌?下面的代码尝试在页面上打印令牌作为中间步骤,但它不会呈现TokenView。怎么了?感谢。
window.App = Em.Application.create({});
App.IndexView = Em.View.extend({
template: Em.Handlebars.compile(
'<h1>Index</h1>'
)
});
App.ResetView = Em.View.extend({
template: Em.Handlebars.compile(
'<h1>reset view </h1>'
)
});
App.TokenView = Em.View.extend({
template: Em.Handlebars.compile(
'<h1>token view {{token_id}}</h1>'
)
});
App.Router = Ember.Router.extend({
rootElement:'#content',
location: 'hash',
enableLogging: true,
root: Ember.State.extend({
index: Ember.ViewState.extend({
route: '/',
view: App.IndexView
}),
passwordReset: Ember.ViewState.extend({
route: '/reset',
view: App.ResetView,
token: Ember.ViewState.extend({
route: '/:token_id',
view: App.TokenView
})
})
})
});
App.router = App.Router.create();
App.initialize(App.router);
答案 0 :(得分:1)
您应该查看有关Router
的最新文档,该文档正在进行中但可用@ https://emberjs-staging-new.herokuapp.com/guides/outlets#toc_the-router