vue使用混入定義全局變量、函數(shù)、篩選器的實(shí)例代碼
說(shuō)一種沒(méi)人發(fā)的,利用混入mixins來(lái)實(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è)分別寫(xiě)到三個(gè)js文件里面了,方便后期維護(hù)。也可以直接寫(xiě)到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ì)象展開(kāi)符混入到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ì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺(jué)得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!
相關(guān)文章
vue使用自定義指令來(lái)控制頁(yè)面按鈕組的權(quán)限思想
這篇文章主要介紹了vue使用自定義指令來(lái)控制頁(yè)面按鈕組的權(quán)限思想,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-08-08vue發(fā)送驗(yàn)證碼計(jì)時(shí)器防止刷新實(shí)現(xiàn)詳解
這篇文章主要為大家介紹了vue發(fā)送驗(yàn)證碼計(jì)時(shí)器防止刷新實(shí)現(xiàn)詳解,<BR>有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-03-03vue、react等單頁(yè)面項(xiàng)目部署到服務(wù)器的方法及vue和react的區(qū)別
這篇文章主要介紹了vue、react等單頁(yè)面項(xiàng)目部署到服務(wù)器的方法,需要的朋友可以參考下2018-09-09關(guān)于vue3默認(rèn)把所有onSomething當(dāng)作v-on事件綁定的思考
這篇文章主要介紹了關(guān)于vue3默認(rèn)把所有`onSomething`當(dāng)作`v-on`事件綁定的思考,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-05-05Vue中對(duì)watch的理解(關(guān)鍵是immediate和deep屬性)
watch偵聽(tīng)器,是Vue實(shí)例的一個(gè)屬性,是用來(lái)響應(yīng)數(shù)據(jù)的變化,需要在數(shù)據(jù)變化時(shí)執(zhí)行異步或開(kāi)銷(xiāo)較大的操作時(shí),這個(gè)方式是最有用的,這篇文章主要介紹了Vue中對(duì)watch的理解,需要的朋友可以參考下2022-11-11vue + webpack如何繞過(guò)QQ音樂(lè)接口對(duì)host的驗(yàn)證詳解
這篇文章主要給大家介紹了關(guān)于利用vue + webpack如何繞過(guò)QQ音樂(lè)接口對(duì)host的驗(yàn)證的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2018-07-07vue-router之實(shí)現(xiàn)導(dǎo)航切換過(guò)渡動(dòng)畫(huà)效果
今天小編就為大家分享一篇vue-router之實(shí)現(xiàn)導(dǎo)航切換過(guò)渡動(dòng)畫(huà)效果,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-10-10