javascript - ES6 中能否把 class 屬性 方法 分檔?
仅有的幸福
仅有的幸福 2017-06-28 09:28:59
0
1
802

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 內部去呢?

仅有的幸福
仅有的幸福

全部回覆(1)
阿神

Mixin模式

簡而言之,就是把幾個類別的prototype屬性合併,最後那個大的類別再繼承這個合併了的類別就行了。

阮一峰的ES6教學有個範例的程序,你可以參考參考:Mixin-模式的實作

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板