vue使用混入定义全局变量、函数、筛选器的实例代码


Posted in Javascript onJuly 29, 2019

说一种没人发的,利用混入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',
}

总结

以上所述是小编给大家介绍的vue使用混入定义全局变量、函数、筛选器的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
按钮接受回车事件的三种实现方法
Jun 06 Javascript
jquery 插件实现多行文本框[textarea]自动高度
Mar 04 Javascript
自己封装的一个原生JS拖动方法(推荐)
Nov 22 Javascript
jQuery插件扩展操作入门示例
Jan 16 Javascript
基于ES6 Array.of的用法(实例讲解)
Sep 05 Javascript
Vue中的基础过渡动画及实现原理解析
Dec 04 Javascript
如何能分清npm cnpm npx nvm
Jan 17 Javascript
详解滑动穿透(锁body)终极探索
Apr 16 Javascript
webpack 代码分离优化快速指北
May 18 Javascript
vue实现滑动到底部加载更多效果
Oct 27 Javascript
jQuery实现B2B网站后台管理系统侧导航
Jul 08 jQuery
vue-openlayers实现地图坐标弹框效果
Sep 24 Javascript
vue前后分离调起微信支付
Jul 29 #Javascript
详解vue-property-decorator使用手册
Jul 29 #Javascript
微信小程序new Date()方法失效问题解决方法
Jul 29 #Javascript
微信小程序 WXML节点信息查询详解
Jul 29 #Javascript
微信小程序登录对接Django后端实现JWT方式验证登录详解
Jul 29 #Javascript
JavaScript HTML DOM元素 节点操作汇总
Jul 29 #Javascript
vue.js 2.0实现简单分页效果
Jul 29 #Javascript
You might like
推荐文章系统(一)
2006/10/09 PHP
PHP小程序自动提交到自助友情连接
2009/11/24 PHP
获取远程文件大小的php函数
2010/01/11 PHP
PHP四大安全策略
2014/03/12 PHP
php通过淘宝API查询IP地址归属等信息
2015/12/25 PHP
Mac下快速搭建PHP开发环境步骤详解
2019/05/05 PHP
增强的 JavaScript 的 trim 函数的代码
2007/08/13 Javascript
confirm的用法示例用于按钮操作时确定是否执行
2014/06/19 Javascript
使用javascript实现Iframe自适应高度
2014/12/24 Javascript
使用jQuery获得内容以及内容的属性
2015/02/26 Javascript
JavaScript实现SHA-1加密算法的方法
2015/03/11 Javascript
深入分析javascript中的错误处理机制
2016/07/17 Javascript
如何用JS判断两个数字的大小
2016/07/21 Javascript
如何提高数据访问速度
2016/12/26 Javascript
jquery+css实现下拉列表功能
2017/09/03 jQuery
p5.js 毕达哥拉斯树的实现代码
2018/03/23 Javascript
浅析前端路由简介以及vue-router实现原理
2018/06/01 Javascript
详解50行代码,Node爬虫练手项目
2019/04/22 Javascript
使用vuex较为优雅的实现一个购物车功能的示例代码
2019/12/09 Javascript
用C++封装MySQL的API的教程
2015/05/06 Python
python异常和文件处理机制详解
2016/07/19 Python
正确理解Python中if __name__ == '__main__'
2019/01/24 Python
python sorted方法和列表使用解析
2019/11/18 Python
PyQT5 emit 和 connect的用法详解
2019/12/13 Python
Pycharm 安装 idea VIM插件的图文教程详解
2020/02/21 Python
python如何从键盘获取输入实例
2020/06/18 Python
virtualenv介绍及简明教程
2020/06/23 Python
仿CSDN Blog返回页面顶部功能实现原理及代码
2013/06/30 HTML / CSS
DOUGLAS波兰:在线销售香水和化妆品
2020/07/05 全球购物
大一新生军训时的自我评价分享
2013/12/05 职场文书
入党推优材料
2014/06/02 职场文书
简易版租房协议书范本
2014/10/13 职场文书
爱国主义教育基地观后感
2015/06/18 职场文书
《花钟》教学反思
2016/02/17 职场文书
巾帼建功标兵先进事迹材料
2016/02/29 职场文书
CSS基础详解
2021/10/16 HTML / CSS