Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/433.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ember.js 如何从Route mixin确定余烬数据类型名称?_Ember.js_Ember Data - Fatal编程技术网

Ember.js 如何从Route mixin确定余烬数据类型名称?

Ember.js 如何从Route mixin确定余烬数据类型名称?,ember.js,ember-data,Ember.js,Ember Data,我正在编写一个Routemixin,它需要实现model方法。但是,由于它是一个Mixin,我不知道要传递给store.filter()的模型名。如何从路由确定余烬数据模型名称?我找到了答案。发送到模型函数的第二个参数是转换对象。可以找到如下所示的模型对象类型: model: function(params, transition) { var type = Ember.Inflector.inflector.singularize(transition.targetName.split

我正在编写一个
Route
mixin,它需要实现
model
方法。但是,由于它是一个
Mixin
,我不知道要传递给
store.filter()
的模型名。如何从路由确定余烬数据模型名称?

我找到了答案。发送到
模型
函数的第二个参数是
转换
对象。可以找到如下所示的模型对象类型:

model: function(params, transition) {
    var type = Ember.Inflector.inflector.singularize(transition.targetName.split('.')[0]);

您可以使用此黑客程序获取目标路由名称,但将此名称映射到类型列表通常不起作用。在我看来,最好的选择是添加一个带有实际信息的参数“ModelType”。它不太容易出错。另一种方法是使用BaseRoute,您可以扩展并覆盖模型钩子(如果愿意,可以使用所需的参数调用此.u super方法)。@Microfed如果您是对的,它将在
路由
s上失败(与
资源
s相反)。