#3 Reopening类和实例
来源:互联网 发布:oneinstack java 编辑:程序博客网 时间:2024/06/05 01:55
英文原版:https://guides.emberjs.com/v2.13.0/object-model/reopening-classes-and-instances/
你不必非要一次把类定义完整。你可以通过reopen()方法再次开启类并且定义新的属性:
Person.reopen({ isPerson: true});Person.create().get('isPerson'); // true
当你使用reopen()时,这时候你可以覆写已经存在方法,并且可以调用this._super():
Person.reopen({ // override `say` to add an ! at the end say(thing) { this._super(thing + '!'); }});
reopen()用来添加实例方法和属性,并且可以在所有的实例中使用。【注】 在vanilla JavaScript 中这个无效。
当你打算添加一个对类有效的静态方法或属性的时候,你应该使用reopenClass():
// add static property to classPerson.reopenClass({ isPerson: false});// override property of existing and future Person instancesPerson.reopen({ isPerson: true});Person.isPerson; // false - because it is static property created by `reopenClass`Person.create().get('isPerson'); // true
本节完
阅读全文
0 0
- #3 Reopening类和实例
- Perl Learning: 5.10. Reopening a Standard Filehandle
- Ember学习(8):REOPENING CLASSES AND INSTANCES
- Ember学习(3):类和实例
- 实例和类成员
- java-类和实例
- 类、对象和实例
- QMimeData类和实例
- python 类和实例
- 类和实例
- python 类和实例
- python 类和实例
- 类和实例
- 类和实例
- Python 类和实例
- Python 类和实例
- python 类和实例
- 类和实例
- 初来CSDN,浅说去除浮动。
- the data type of redis
- ThinkPHP框架的各种大写字母(A\C\R\M\D\I、、、、)方法汇总
- MySQL Community Server 5.7安装
- java的文件过滤FileFilter
- #3 Reopening类和实例
- Java基础教程11-switch语句
- map的个人理解
- Java第一篇
- Python笔记(五)三级菜单
- beautiful C code(updating)
- springMvc请求的跳转和传值
- 【java web】springMVC框架实现用多选框批量删除表数据功能
- Java浮点数在计算机中的表示方法(IEEE754-1985)