如何使用backbone.js从集合中获取模型名称

How to get model name from a collection with backbone.js

本文关键字:获取 模型 集合 何使用 backbone js      更新时间:2023-09-26

如何从集合中获取模型名称?当我定义集合时,我将模型属性指定为:

Domains = Backbone.Collection.extend({
    model : Account
})

如何获取此属性值?

我尝试了Domains.model…

首先,如果您使用字符串初始化Collection.model,我认为Backbone不会工作,您必须指定这样的Model类引用:

var MyModel = Backbone.Model.extend({});
var MyCollection = Backbone.Collection.extend({
    model: MyModel
});

说我不可能从变量引用本身检索变量的名称。

我建议想出一个变通办法,用String类属性标记每个模型,你可以问它是类名:

var MyModel = Backbone.Model.extend({
    name: "MyModel"
});
var MyCollection = Backbone.Collection.extend({
    model: MyModel
});
var myCollection = new MyCollection();
console.log( "reference", myCollection.model ); // reference to the class 
console.log( "reference.name", myCollection.model.prototype.name );​ // string name

检查jsFiddle