vue mixins 合並策略


methods、components、directives

mixins定義:

mixins選項接受一個混入對象的數組,類型:Array<Object>

mixins原理:

真正的實現是靠mergeOptions函數實現的。

這個函數傳進去的兩個參數分別是this.options 和 mixin,而mergeOptions函數則實現了遞歸遍歷this.options,然后執行mergeField,返回最終合並的this.options
mergeField函數:一般我們執行mergeField 里的key基本上就是上面strats的屬性了,用的最多的可能就是data、methods、props了,所以如果我們在mixins中用到了data,其本質上就是合並當前vue實例對象里的data和我們傳進去的mixin里的data,其他屬性也是一樣的

合並策略:

1、data

mixins中的data會合並到實例中的data中,有沖突的話,實例中data的數據會覆蓋mixins中的數據

 

2、鈎子函數

mixins中和實例中的鈎子函數,都會執行,先執行mixins中的鈎子函數

 

 

 3、methods、components、directives

methods、components、directives會執行,當有沖突的時候,實例中的會覆蓋mixins中的

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM