Ember 根据参数名称为 url 参数返回未定义
Ember returning undefined for url parameter depending on the name of the parameter
我遇到了 Ember 中路由参数的一些奇怪行为。它的工作取决于路由参数的名称。
我有一个看起来像这样的路由器
Router.map(function() {
this.resource('movies', { path: '/movies/:release_date' });
});
还有一条看起来像这样的路线
export default Ember.Route.extend({
model: function(params) {
console.log('HI ' + Ember.keys(params) + ', ' + params.release_date);
return this.store.findAll('movie', params.release_date);
}
});
当我访问路由时 /movies/foo
我在控制台中看到了这个
HI release_date, undefined
但是,如果我将参数更改为 release_date
以外的几乎任何参数,它将按预期工作(即,在路由器和路由对象本身的定义中更改它)。示例:
HI rel_date, foo
HI release_d, foo
为什么会这样?有没有办法让它以 release_date
作为参数工作?
尝试:
rm -rf tmp/
并重启你的服务器。
与 Ember.js 问题相比,这更有可能是您应用中的拼写错误。
这个有效:http://emberjs.jsbin.com/pefudesaya/1/edit?html,js,console,output
我遇到了 Ember 中路由参数的一些奇怪行为。它的工作取决于路由参数的名称。
我有一个看起来像这样的路由器
Router.map(function() {
this.resource('movies', { path: '/movies/:release_date' });
});
还有一条看起来像这样的路线
export default Ember.Route.extend({
model: function(params) {
console.log('HI ' + Ember.keys(params) + ', ' + params.release_date);
return this.store.findAll('movie', params.release_date);
}
});
当我访问路由时 /movies/foo
我在控制台中看到了这个
HI release_date, undefined
但是,如果我将参数更改为 release_date
以外的几乎任何参数,它将按预期工作(即,在路由器和路由对象本身的定义中更改它)。示例:
HI rel_date, foo
HI release_d, foo
为什么会这样?有没有办法让它以 release_date
作为参数工作?
尝试:
rm -rf tmp/
并重启你的服务器。
与 Ember.js 问题相比,这更有可能是您应用中的拼写错误。
这个有效:http://emberjs.jsbin.com/pefudesaya/1/edit?html,js,console,output