Backbone.Model を拡張するクラスに少し問題があります。
次のクラスを使用して…</p>
class Turtles extends Backbone.Model
idAttribute: "_id"
legs: [0,1,3,5]
urlRoot: '/turtles'
module.exports = Turtles
grunt.js は、lint 時にこのエラーをスローしています。
[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
ため、すべてのビューとコレクションが存在しない場合に、このモデルがリンティングに失敗する理由がわかりません。
とは言っても、 で置き換えるclass Turtles extends Backbone.Model
とTurtles = Backbone.Model.extend
動作し、エラーは発生しません。
誰かが以前にこれを経験したことがあるかどうか、またはおそらく問題を見つけることができるかどうか疑問に思いました.
ありがとう