0

モデルをインスタンス化していなくても、このコードから「SyntaxError: 無効なラベル」エラーが発生します。

nameは単純な文字列であるはずですが、dataは連想配列です。

これとまったく同じ例は見つかりません-バックボーンを誤用していますか?

var arrayModel = Backbone.Model.extend({
    initialize: function( name, data ) {
        name: name,
        key: data.AName,
        tech: data.Tech,
        // not really used
        array_type: data.array_type,
        desc: data.desc
    }
});
4

1 に答える 1

2

関数式の構文とオブジェクト リテラルの構文を混同しています。

おそらくあなたは次のことを意味しました:

var arrayModel = Backbone.Model.extend({
    initialize: function( name, data ) {
      return {
        name: name,
        key: data.AName,
        tech: data.Tech,
        // not really used
        array_type: data.array_type,
        desc: data.desc
      };
    }
});

または多分:

var arrayModel = Backbone.Model.extend({
    initialize: (function( name, data ) {
      return function(){
        this.name = name;
        this.key = data.AName;
        this.tech = data.Tech;
        // not really used
        this.array_type = data.array_type;
        this.desc = data.desc;
      };
    })()
});

Backbone.js に慣れていないため、正確にはわかりません。

于 2013-05-25T00:15:50.227 に答える