我使用的是ember-cli和ember 2。
我有这条路线:
import Ember from 'ember';
import config from './config/environment';
var Router = Ember.Router.extend({
location: config.locationType
});
Router.map(function() {
this.route('/', { path: '/:query' });
this.route('qrcode-capture');
this.route('item', { path: '/item/:name' });
});
export default Router;
但是当我尝试在params.name
模板中使用item.hbs
时,我得到了未定义。
我已尝试以这种方式为item
定义路线:
export default Ember.Route.extend({
model(params) {
this.set('params', params);
},
setupController(controller, model) {
controller.set('params', this.get('params'));
this._super(controller, model);
}
});
但是,在params
内,我得到Object {name: null}
(即使网址已填充:name
段。
我做错了什么?
PS:
我的index
路线如下所示:
export default Ember.Route.extend({
renderTemplate: function() {
this.render('home');
}
});
答案 0 :(得分:1)
我已将:name
替换为:itemName
,现在我的参数日志返回Object {name: null, itemName: 'test' }
我猜是name
以某种方式由Ember保留......