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根據(jù)條件決定是否執(zhí)行事件

再配合三目運算 , 可以更完善
vue中的全局混入mixin
混入提供了一種非常靈活的方式,來分發(fā) Vue 組件中的可復用功能。
一個混入對象可以包含任意組件選項。
當組件使用混入對象時,所有混入對象的選項將被“混合”進入該組件本身的選項。
舉例
// 定義一個混入對象
var myMixin = {
created() {
this.hello()
},
methods: {
hello() {
console.log('hello from mixin!')
}
}
}
// main.js全局使用
Vue.mixin(myMixin)因為是全局混入,myMixin中的數(shù)據(jù)和方法會被掛載到每個組件的實例對象上
注意:
1、當組件和混入對象含有同名選項時,這些選項將以恰當?shù)姆绞竭M行“合并”。
比如,數(shù)據(jù)對象在內部會進行遞歸合并,并在發(fā)生沖突時以組件數(shù)據(jù)優(yōu)先。
2、同名鉤子函數(shù)將合并為一個數(shù)組,因此都將被調用。另外,混入對象的鉤子將在組件自身鉤子之前調用。
3、值為對象的選項,例如 methods、components 和 directives,將被合并為同一個對象。兩個對象鍵名沖突時,取組件對象的鍵值對。
總結
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
基于vue-cli3創(chuàng)建libs庫的實現(xiàn)方法
這篇文章主要介紹了基于vue-cli3創(chuàng)建libs庫的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-12-12
vue使用cesium創(chuàng)建數(shù)據(jù)白模方式
這篇文章主要介紹了vue使用cesium創(chuàng)建數(shù)據(jù)白模方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-10-10
vue路由傳參-如何使用encodeURI加密參數(shù)
這篇文章主要介紹了vue路由傳參-如何使用encodeURI加密參數(shù),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-06-06

