stapes文档翻译
1.引言
写一个Stapes 模型如下:
![](https://images2015.cnblogs.com/blog/660464/201605/660464-20160522185910826-990538763.png)
2.创建方法
这些方法用来帮助创建和扩展类或模块。这些术语在文档中可交换的。
subclass
Module.subclass([object])
stapes.subclass([object])
创建一个新的Stapes类,并且可以使用new对其进行实例化。
Note : Stapes 0.6.0之前创建一个新的模块最完美的方法是使用Stapes.create。从Stapes 0.7.0开始subclass。
对象增加一个constructor属性(当实例化类时,该对象就运行)。所有其他的属性就变成原型方法。使用extend可以增加静态方法。如果想为类的原型方法增加更多的属性,使用proto。
![](https://images2015.cnblogs.com/blog/660464/201605/660464-20160522194631919-981353325.png)
当一个Stapes类调用subclass时,可以扩展该类,该类将继承父类的所有属性。
![](https://images2015.cnblogs.com/blog/660464/201605/660464-20160522200209591-1172230386.png)
Note :不适用任何参数就可以有效地调用subclass。这样的话,可以得到一个含有空构造函数的新类。
Note:如果一个模块调用subclass,子模块不能自动继承父类的构造函数。如果想继承父类的构造函数,可以这样设置subclass:
![](https://images2015.cnblogs.com/blog/660464/201605/660464-20160522201637607-610543570.png)
因为subclass建立原型链,instanceof能够正确地按照预期的工作。
![](https://images2015.cnblogs.com/blog/660464/201605/660464-20160522202727294-844943209.png)
所有模型能够自动地得到父类的一个属性,该属性能够链接返回父类的原型。可以使用这个覆盖新类的一个方法,但是仍然还可以调用父类的这个方法,像其他语言中的super。
![](https://images2015.cnblogs.com/blog/660464/201605/660464-20160522214322654-1547666554.png)
选项classonly当设置成true时,那么新创建的类中没有任何事件或数据方法。能够得到所有的创建方法,可以继承类。使用classonly使得Stapes作为一个简单的函数类库。
![](https://images2015.cnblogs.com/blog/660464/201605/660464-20160522223957826-2077509207.png)
extend
module.extend(object[,object...])
Stapes.extend(object)
通过给一个对象来扩展类实例属性。含有相对值得键将被重写。this将设置对象上下文。
![](https://images2015.cnblogs.com/blog/660464/201605/660464-20160522225141044-919721155.png)
使用extend实际上相当于直接给模块设置属性:
![](https://images2015.cnblogs.com/blog/660464/201605/660464-20160522225848873-2092241479.png)
extend和proto均能够接受多个对象作为参数:
![](https://images2015.cnblogs.com/blog/660464/201605/660464-20160522230834341-1936927574.png)
extend也用作配置属性
![](https://images2015.cnblogs.com/blog/660464/201605/660464-20160522232136185-793171810.png)
Stapes.extend()能够为所有的Stapes模块增加方法和属性。这有利于书写不在Stapes插件函数。
![](https://images2015.cnblogs.com/blog/660464/201605/660464-20160523231314991-151621664.png)
proto
Module.proto(object)
为模块增加原型方法和属性。
可以使用Stapes方法很容易地直接增加原型方法。如果之后想增加原型方法,可以使用proto。
![](https://images2015.cnblogs.com/blog/660464/201605/660464-20160523233017163-1488404159.png)
proto和extend均能够接受多个对象作为参数。对于处理混合参数,很有用。
![](https://images2015.cnblogs.com/blog/660464/201605/660464-20160523233840272-577367125.png)
Event methods
on
module.on(eventName,handler,)
posted on 2016-05-22 18:52 qingzhu1224 阅读(242) 评论(0) 编辑 收藏 举报