获取骨干模型的名称/类型

时间:2015-11-12 18:38:29

标签: backbone.js backbone-views backbone-routing backbone-model

除了6种不同类型的模型外,我有一个通用的视图。

我创建视图并传入模型,如下所示:

 var view = new MyView({
                model: myModelType  //can be 1 of 6 different model types
 });

在视图中,我需要显示子视图,但前提是模型不是某种类型。

在视图中,我只提到像' this.model'这样的模型。有没有办法弄清楚传入的模型类型?

我尝试了这个,但我收到了警告:

if (this.model != ModelTypeA) { do stuff }

警告是:在脚本模式下不允许使用变量而不声明它。

我也尝试过:

if (!this.model instanceof ModelTypeA)

但我得到同样的警告。

获取模型类型/名称是否有技巧?

谢谢!

1 个答案:

答案 0 :(得分:2)

嗯,我试过了,看起来对我来说,你使用的是var A = Backbone.Model.extend({}); var B = Backbone.Model.extend({}); var AA = A.extend({}); new A() instanceof Backbone.Model > true new AA() instanceof Backbone.Model > true new AA() instanceof A > true new A() instanceof B > false new B() instanceof A > false 吗?

{{1}}