我对扩展 Backbone.Model 的类有点问题。
使用下面的类……</p>
class Turtles extends Backbone.Model
idAttribute: "_id"
legs: [0,1,3,5]
urlRoot: '/turtles'
module.exports = Turtles
linting 时 grunt.js 会抛出此错误。
[L21:C18] 'Turtles' is already defined.
function Turtles() {
编译 js 文件的输出如下所示:
(function() {
var Turtles,
__hasProp = {}.hasOwnProperty,
__extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; };
Turtles = (function(_super) {
__extends(Turtles, _super);
function Turtles() {
return Turtles.__super__.constructor.apply(this, arguments);
}
Turtles.prototype.idAttribute = "_id";
Turtles.prototype.points = [0, 1, 3, 5];
Turtles.prototype.categories = ['story', 'tech', 'design', 'bug'];
Turtles.prototype.urlRoot = '/cards';
return Turtles;
})(Backbone.Model);
module.exports = Turtles;
}).call(this);
这个输出与我使用 扩展的一些视图非常相似class Application extends Backbone.View
,所以我不确定为什么当我的所有视图和集合都没有时,这个模型会失败 linting。
话虽如此,替换class Turtles extends Backbone.Model
为Turtles = Backbone.Model.extend
作品找到并不会导致错误。
只是想知道是否有人以前有过这方面的经验,或者可能会发现问题。
谢谢