【问题标题】:Object in the Options of a Class in Mootools?Mootools中类的选项中的对象?
【发布时间】:2012-04-19 02:21:53
【问题描述】:

是否可以在 Mootools 类的options 中定义对象?

我正在尝试将日期对象访问到类实例的 options 对象。

options: {
    date: new Date().increment('year')
}

【问题讨论】:

  • 我希望这是一个错字,但看看你的网名,我不确定......

标签: javascript class object mootools options


【解决方案1】:

呃,不知道这个问题的意义何在。尝试一下会容易得多。

var f = new Class({

    options: {
        date: new Date().increment('year')
    },

    Implements: [Options],

    initialize: function(options) {
        this.setOptions(options);
        console.log(this.options.date);
    }

});

new f(); // now + 1 yr.

所以是的,这是可能的。您可以传递任何对象,包括日期 - 只要它在定义时可用并且不尝试引用类原型或实例本身,这可能会导致问题。

请记住,日期将在原型上静态设置。所以如果你做了date: new Date() 然后在5分钟后实例化了这个类,没有通过选项传递一个新的日期,它将引用类定义时的日期,而不是实例化。 prolly 对您来说并不重要,因为您在一年后的日期之后。

http://jsfiddle.net/qV3JM/

【讨论】:

    【解决方案2】:
    Implements:[Options],
    

    必须插入“new Class({”之后的第一行

    还有:

    options:{ date: new Date().getFullYear() + 1, },
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-09
      • 2011-01-17
      • 2019-04-30
      • 1970-01-01
      • 2012-01-30
      相关资源
      最近更新 更多