Base 是一个基础类,提供 Class、Events、Attribute 和 Aspect 支持。
基于 Base 创建子类。例子:
/* pig.js */
var Base = require('base');
var Pig = Base.extend({
attrs: {
name: ''
},
talk: function() {
alert('我是' + this.get('name'));
}
});
module.exports = Pig;
继承 Base 可覆盖 initialize 构造函数, 但需要调用父类构造函数,如 arale 的 widget 定义了组件的生命周期
/* widget.js */
var Base = require('base');
var Widget = Base.extend({
initialize: function(config) {
Widget.superclass.initialize.call(this, config);
this.parseElement()
this.initProps()
this.delegateEvents()
this.setup()
},
...
});
module.exports = Widget;
Base 继承和混入了一下功能,可查看文档 :
Base 是使用 Class
创建的一个基础类,默认混入了 Events
、Attribute
、Aspect
模块:
/* base.js */
var Class = require('class');
var Events = require('events');
var Aspect = require('./aspect');
var Attribute = require('./attribute');
var Base = Class.create({
Implements: [Events, Aspect, Attribute],
initialize: function(config) {
...
},
...
});
...