将“this”关键字发送到对象中

时间:2012-08-30 06:40:55

标签: javascript backbone.js this

var View = Backbone.View.extend({
    id: 'foobar',

    param: {
        x: this.id // Will be "undefined"
    }
});

有没有办法利用thisthis.param.x指向this.id,或与{{1}}具有相同的价值?

2 个答案:

答案 0 :(得分:3)

您不能在静态声明中使用对象的this。您可以在方法调用中或在构造函数中使用代码设置该值,但不能在静态声明中设置。

答案 1 :(得分:1)

使用类似的东西,

var View = Backbone.View.extend({
  id: 'foobar',

  initialize: function () {
      this.param = { x: this.id };
  }
});