vue使用混入定義全局變量、函數(shù)、篩選器的實(shí)例代碼
說一種沒人發(fā)的,利用混入mixins來實(shí)現(xiàn)全局變量和函數(shù)。mixins里面的方法、變量、篩選器會(huì)和組件里面的方法、變量、篩選器合并。這種方法優(yōu)點(diǎn)是ide會(huì)有方法、變量、篩選器提示。
一、main.js文件
import Vue from 'vue'
import App from './App'
import router from './router'
import store from './store'
import mixin from './utils/mixin'
Vue.prototype.$bus = new Vue()
//進(jìn)行全局混入
Vue.mixin(mixin)
new Vue({
store,
router,
render: h => h(App),
}).$mount('#app')
一、mixin.js文件,我是把方法、變量、篩選器這三個(gè)分別寫到三個(gè)js文件里面了,方便后期維護(hù)。也可以直接寫到mixins文件里面
import filters from './filters'
import globalMethods from './global-methods'
import Config from '../config'
import CONSTANT from './const_var'
// 全局混入
export default {
data() {
return {
CONFIG: Config,
CONSTANT,
}
},
methods: {
// //將globalMethods文件里面的方法掛載到vue上,以方便調(diào)用,直接this.$xxx方法名就可以了
// Object.keys(globalMethods).forEach(key => {
// Vue.prototype[key] = tools[key]
// })
// 將globalMethods里面的方法用對(duì)象展開符混入到mixin上,以方便調(diào)用,直接this.$xxx方法名就可以了
...globalMethods,
},
filters: {
// //將filter里面的方法添加了vue的篩選器上
// Object.keys(filters).forEach(key => {
// Vue.filter(key, filters[key])
// })
...filters,
},
}
filters.js文件
export default {
// 時(shí)間轉(zhuǎn)換器
date(v) {
...
},
// 處理身份證信息,中間隱藏掉
processIdNumber(v) {
...
},
}
global-methods.js文件
import { Message, MessageBox } from 'element-ui'
export default {
$success(msg) {
...
},
$warning(msg) {
...
},
$error(msg) {
...
},
$checkPlatform() {
...
},
// 倒計(jì)時(shí)時(shí)間格式化
$countdownFormatTime(timeStamp) {
...
},
}
constant_var.js文件
export default {
REDIRECT: 'redirect',
// 請(qǐng)求方法
POST: 'post',
GET: 'get',
PATCH: 'patch',
DELETE: 'delete',
PUT: 'put',
// 靜態(tài)常量
PICKEROPTIONS: {
...
},
PAGENUMBER: 1,
PAGESIZE: 10,
DELAYTIME: 250,
SUCCESS: '000000',
}
總結(jié)
以上所述是小編給大家介紹的vue使用混入定義全局變量、函數(shù)、篩選器的實(shí)例代碼,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!
相關(guān)文章
詳解如何使用Object.defineProperty實(shí)現(xiàn)簡易的vue功能
這篇文章主要為大家介紹了如何使用Object.defineProperty實(shí)現(xiàn)簡易的vue功能示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-04-04
vue input輸入框關(guān)鍵字篩選檢索列表數(shù)據(jù)展示
這篇文章主要為大家詳細(xì)介紹了vue input輸入框關(guān)鍵字篩選檢索列表數(shù)據(jù)展示,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-05-05
VUEX 數(shù)據(jù)持久化,刷新后重新獲取的例子
今天小編就為大家分享一篇VUEX 數(shù)據(jù)持久化,刷新后重新獲取的例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-11-11
Vue用Export2Excel導(dǎo)出excel,多級(jí)表頭數(shù)據(jù)方式
這篇文章主要介紹了Vue用Export2Excel導(dǎo)出excel,多級(jí)表頭數(shù)據(jù)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-04-04
Vue利用openlayers實(shí)現(xiàn)點(diǎn)擊彈窗的方法詳解
點(diǎn)擊彈窗其實(shí)就是添加一個(gè)彈窗圖層,然后在點(diǎn)擊的時(shí)候讓他顯示出來罷了。本文將利用openlayers實(shí)現(xiàn)這一效果,快跟隨小編一起學(xué)習(xí)一下吧2022-06-06
SpringBoot+Vue項(xiàng)目線上買菜系統(tǒng)源碼展示
本線上買菜系統(tǒng)采用的數(shù)據(jù)庫是Mysql,使用springboot框架開發(fā)。在設(shè)計(jì)過程中,充分保證了系統(tǒng)代碼的良好可讀性、實(shí)用性、易擴(kuò)展性、通用性、便于后期維護(hù)、操作方便以及頁面簡潔等特點(diǎn),需要的朋友可以參考下2022-08-08
vue路由跳轉(zhuǎn)到新頁面實(shí)現(xiàn)置頂
這篇文章主要介紹了vue路由跳轉(zhuǎn)到新頁面實(shí)現(xiàn)置頂問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-05-05

