摘要:说一种没人发的,利用混入来实现全局变量和函数。这种方法优点是会有方法变量筛选器提示。一文件进行全局混入一文件,我是把方法变量筛选器这三个分别写到三个文件里面了,方便后期维护。
说一种没人发的,利用混入mixins来实现全局变量和函数。mixins里面的方法、变量、筛选器会和组件里面的方法、变量、筛选器合并。这种方法优点是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上,以方便调用,直接this.$xxx方法名就可以了
// Object.keys(globalMethods).forEach(key => {
// Vue.prototype[key] = tools[key]
// })
// 将globalMethods里面的方法用对象展开符混入到mixin上,以方便调用,直接this.$xxx方法名就可以了
...globalMethods,
},
filters: {
// //将filter里面的方法添加了vue的筛选器上
// Object.keys(filters).forEach(key => {
// Vue.filter(key, filters[key])
// })
...filters,
},
}
filters.js文件
export default {
// 时间转换器
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",
// 静态常量
PICKEROPTIONS: {
...
},
PAGENUMBER: 1,
PAGESIZE: 10,
DELAYTIME: 250,
SUCCESS: "000000",
}
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/106123.html
摘要:全局混入对象不会覆盖组件中的同名钩子函数将混合为一个数组,因此都将被调用。而钩子函数混入和组件中的不合并,而是都执行,先执行混入中的钩子,再执行组件中的。 组件引用 —— ref、$refs 给子组件或者原始DOM加上ref特性,就可以为其声明引用标记,添加引用后,可以在Javascript中使用vm|this.$refs.refname获取子组件或原始DOM。若是原始DOM,则效果如...
前言 从 9 月份开始,vuepress 源码进行了重新设计和拆分。先是开了个 next 分支,后来又合并到 master 分支,为即将发布的 1.x 版本做准备。 最主要的变化是:大部分的全局功能都被拆分成了插件的形式,以可插拔的方式来支撑 vuepress 的运作,这一点很像 webpack。 具体架构如下: showImg(https://user-gold-cdn.xitu.io/2019...
阅读 3747·2021-09-02 15:41
阅读 3002·2021-09-02 09:48
阅读 1663·2019-08-29 13:27
阅读 1351·2019-08-26 13:37
阅读 1119·2019-08-26 11:56
阅读 2735·2019-08-26 10:24
阅读 1877·2019-08-23 18:07
阅读 2840·2019-08-23 15:16