es6 中定义 class,可以这样
class A {
x = 1;
y = 2;
z = 3;
mx () { // ... }
my () { // ... }
mz () { // ... }
}
A 类属性方法越来越多的时候,发现整一个文件的代码量很大。能否将一些属性以及方法划分成单个文件 ( 例如 x 与 mx 分成一个 x.js 文件,y 与 my 分成一个 y.js 文件 ... )
如果使用 extends 时候,会发现问题,属性没法变成共享的,方法也是。
那能否在定义 class A 的时候再把( x.js / y.js / ... )结合到 A 内部去呢?
阿神2017-06-28 09:30:59
Mixin
模式
简而言之,就是把几个类的prototype
属性合并,最后那个大的类再继承这个合并了的类就行了。
阮一峰的ES6教程有个样例的程序,你可以参考参考:Mixin-模式的实现