說一種沒人發(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ì)錯(cuò)新站長(zhǎng)站網(wǎng)站的支持!
如果你覺得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!
新聞熱點(diǎn)
疑難解答
圖片精選