从方法中的Backbone.Model获取默认值?

时间:2012-08-27 05:34:44

标签: backbone.js

我正在尝试获取在方法下使用的默认值。似乎Model.get()不能在方法本身中使用。我试过了两个console.log,它显示了未定义的变量。

define(['jquery', 'Underscore', 'Backbone'], function($, _, Backbone){
    var Game = Backbone.Model.extend({
        //default values for the function
        defaults: {
            rows : 9,
            cols : 8,
            baseScore : 100, 
            numBlockTypes : 6, 
            baseLevelTimer : 60000,
            baseLevelScore : 1500,
            baseLevelExp : 1.05, 
        },
        initialize: function(){
            console.log(this.get(numBlockTypes));
            //console.log(numBlockTypes);
        }
    }),

    game = new Game;

    return game;
});

2 个答案:

答案 0 :(得分:5)

根据您的问题(获取默认值),答案应为

this.defaults.numBlockTypes

提到的方法

this.get("numBlockTypes")

返回当前(设置)值。

答案 1 :(得分:2)

@Elvis D'Souza和我同时提出了同样的答案。

需要引用

console.log(this.get('numBlockTypes'));