溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

vue使用混入定義全局變量、函數(shù)、篩選器的實例代碼

發(fā)布時間:2020-10-03 17:28:53 來源:腳本之家 閱讀:184 作者:ttentau 欄目:web開發(fā)

說一種沒人發(fā)的,利用混入mixins來實現(xiàn)全局變量和函數(shù)。mixins里面的方法、變量、篩選器會和組件里面的方法、變量、篩選器合并。這種方法優(yōu)點是ide會有方法、變量、篩選器提示。

一、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() 
//進行全局混入
Vue.mixin(mixin)
new Vue({
  store,
  router,
  render: h => h(App),
}).$mount('#app')

一、mixin.js文件,我是把方法、變量、篩選器這三個分別寫到三個js文件里面了,方便后期維護。也可以直接寫到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里面的方法用對象展開符混入到mixin上,以方便調(diào)用,直接this.$xxx方法名就可以了
    ...globalMethods,
  },
  filters: {
    // //將filter里面的方法添加了vue的篩選器上
    // Object.keys(filters).forEach(key => {
    //   Vue.filter(key, filters[key])
    // })
    ...filters,
  },
}

filters.js文件

export default {
  // 時間轉(zhuǎn)換器
  date(v) {
   ...
  },
  // 處理身份證信息,中間隱藏掉
  processIdNumber(v) {
    ...
  },
}

global-methods.js文件

import { Message, MessageBox } from 'element-ui'
export default {
  $success(msg) {
   ...
  },
  $warning(msg) {
   ...
  },
  $error(msg) {
   ...
  },
  $checkPlatform() {
   ...
  },
  // 倒計時時間格式化
  $countdownFormatTime(timeStamp) {
    ...
  },
}

constant_var.js文件

export default {
  REDIRECT: 'redirect',
  // 請求方法
  POST: 'post',
  GET: 'get',
  PATCH: 'patch',
  DELETE: 'delete',
  PUT: 'put',
  // 靜態(tài)常量
  PICKEROPTIONS: {
    ...
  },
  PAGENUMBER: 1,
  PAGESIZE: 10,
  DELAYTIME: 250,
  SUCCESS: '000000',
}

總結(jié)

以上所述是小編給大家介紹的vue使用混入定義全局變量、函數(shù)、篩選器的實例代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對億速云網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI