vue全局混入之狀態(tài)判斷是否執(zhí)行點擊
vue全局混入狀態(tài)判斷是否執(zhí)行點擊
1.項目下創(chuàng)建 mps-ui\src\plugins\listenerClick.js
2.文件內寫法
//listenerClick.js import { mapGetters } from 'vuex' export default { computed: { ...mapGetters(['leftNavStatus']) }, data() { return {} }, mounted() { if (document.getElementById('controlBtn11')) { document .getElementById('controlBtn11') .addEventListener('click', this.doSomeThings(), true) } }, methods: { doSomeThings() {} } }
3.main.js
加以下代碼
// 全局監(jiān)聽 Vue.mixin(require('./directive/listenerClick.js').default)
全局可使用這里面的變量和方法
vue根據條件決定是否執(zhí)行事件
再配合三目運算 , 可以更完善
vue中的全局混入mixin
混入提供了一種非常靈活的方式,來分發(fā) Vue 組件中的可復用功能。
一個混入對象可以包含任意組件選項。
當組件使用混入對象時,所有混入對象的選項將被“混合”進入該組件本身的選項。
舉例
// 定義一個混入對象 var myMixin = { created() { this.hello() }, methods: { hello() { console.log('hello from mixin!') } } } // main.js全局使用 Vue.mixin(myMixin)
因為是全局混入,myMixin中的數據和方法會被掛載到每個組件的實例對象上
注意:
1、當組件和混入對象含有同名選項時,這些選項將以恰當的方式進行“合并”。
比如,數據對象在內部會進行遞歸合并,并在發(fā)生沖突時以組件數據優(yōu)先。
2、同名鉤子函數將合并為一個數組,因此都將被調用。另外,混入對象的鉤子將在組件自身鉤子之前調用。
3、值為對象的選項,例如 methods
、components
和 directives
,將被合并為同一個對象。兩個對象鍵名沖突時,取組件對象的鍵值對。
總結
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
基于vue-cli3創(chuàng)建libs庫的實現方法
這篇文章主要介紹了基于vue-cli3創(chuàng)建libs庫的實現方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-12-12