Vue 中mixin 的用法詳解
說下我對vue中mixin的一點理解
vue中提供了一種混合機制--mixins,用來更高效的實現組件內容的復用。最開始我一度認為這個和組件好像沒啥區(qū)別。。后來發(fā)現錯了。下面我們來看看mixins和普通情況下引入組件有什么區(qū)別?
組件在引用之后相當于在父組件內開辟了一塊單獨的空間,來根據父組件props過來的值進行相應的操作,單本質上兩者還是涇渭分明,相對獨立。
而mixins則是在引入組件之后,則是將組件內部的內容如data等方法、method等屬性與父組件相應內容進行合并。相當于在引入后,父組件的各種屬性方法都被擴充了。
單純組件引用:
父組件 + 子組件 >>> 父組件 + 子組件
mixins:
父組件 + 子組件 >>> new父組件
作用:多個組件可以共享數據和方法,在使用mixin的組件中引入后,mixin中的方法和屬性也就并入到該組件中,可以直接使用。鉤子函數會兩個都被調用,mixin中的鉤子首先執(zhí)行。
下面給大家介紹vue mixin的用法,具體介紹如下所示:
1.定義一個 js 文件(mixin.js)
export default {
data() {
return {
name: 'mixin'
}
},
created() {
console.log('mixin...', this.name);
},
mounted() {},
methods: {}
}
關于用法,vue文檔中有詳細的介紹,這里只介紹怎么在一個vue文件中使用mixin。
2.在vue文件中使用mixin
import '@/mixin'; // 引入mixin文件
export default {
mixins: [mixin]
}
總結
以上所述是小編給大家介紹的Vue 中mixin 的用法詳解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
相關文章
vue項目開發(fā)中setTimeout等定時器的管理問題
這篇文章主要介紹了vue項目開發(fā)中setTimeout等定時器的管理問題,需要的朋友可以參考下2018-09-09

