在vue.js中抽出公共代码的方法示例


Posted in Javascript onJune 08, 2017

前言

当我们在使用vue构建中大型项目时,通常会遇到某些经常用的方法以及属性,比如说搭建一个员工管理系统,请求的url需要一个共同的前缀,或者在某几个view中需要用到时间,这个时间是通过某方法格式化之后的等等,如果每次用到都写共同的代码,那样如果之后有变动的话维护起来会非常麻烦。

所以我们就得想办法抽出公共代码,因为vue是组件化开发,我们就会很自然的与es6的module模块化联系到一起。其实当我们在搭建项目结构时就应该先提前埋下伏笔,有一个util文件夹,里面放的就是我们要写的公共代码,其实很多vue的例子都是类似于这种结构搭建的。

在vue.js中抽出公共代码的方法示例

对于固定的配置参数我们可以放到config.js中,就像下面这样。

const config = {
 request_prefix: 'http://localhost:10003',
 base_img: 'http://www.baidu.com',
 
}

const DingConf = function(data){
 xxxxxxxxx
}


export {config, DingConf}

对于常用的工具函数我们可以放到util.js中,结构跟上面一样。

然后为什么我要用export来导出,而不用export default呢?

因为前者更为灵活,因为对于大中型项目来说,我们的工具函数以及配置参数往往较多,如果我们使用export default导出的话,在组件中引入就会全部引入,但我们的需求是只在相应的页面中按需引入即可,所以在vue文件中,我们就可以这样写

import {config} from 'src/util/config'      // 引入模块
export default {
created(){


this.$http({



url: config.request_prefix + xxxxxxxxxxxxx  // 使用


})

}
}

这样写的优点是增强了可读性并利于维护。如果有同学不太理解es6中的import,export,建议大家去看下阮一峰大神的es6入门教程,在这里我也简单的说下吧,因为vue是模块化,所以就得导出某些东东,然后每个模块只负责不同的业务,所以嘛我们最后就得export一下,因为const是不变的常量,所以在配置项中尽可能用这个,在工具函数中用let声明变量,然后import后面的{ ... }就是引入某个模块的某些属性或方法,from 'xxxx' 这里面是指引入哪个模块。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
在标题栏显示新消息提示,很多公司项目中用到这个方法
Nov 04 Javascript
javascript实现焦点滚动图效果 具体方法
Jun 24 Javascript
jqGrid增加时--判断开始日期与结束日期(实例解析)
Nov 08 Javascript
html的DOM中document对象forms集合用法实例
Jan 21 Javascript
使用jQuery在对象中缓存选择器的简单方法
Jun 30 Javascript
JS使用eval解析JSON的注意事项分析
Nov 14 Javascript
JS实现的幻灯片切换显示效果
Sep 07 Javascript
详解如何构建Angular项目目录结构
Jul 13 Javascript
vue.js添加一些触摸事件以及安装fastclick的实例
Aug 28 Javascript
JQuery animate动画应用示例
May 14 jQuery
node.JS路径解析之PATH模块使用方法详解
Feb 06 Javascript
在Vue 中实现循环渲染多个相同echarts图表
Jul 20 Javascript
Ionic3 UI组件之autocomplete详解
Jun 08 #Javascript
jQuery+ajax实现局部刷新的两种方法
Jun 08 #jQuery
gulp解决跨域的配置文件问题
Jun 08 #Javascript
angular 用拦截器统一处理http请求和响应的方法
Jun 08 #Javascript
jQuery 添加样式属性的优先级别方法(推荐)
Jun 08 #jQuery
Ionic项目中Native Camera的使用方法
Jun 07 #Javascript
详解angular ui-grid之过滤器设置
Jun 07 #Javascript
You might like
PHP一些常用的正则表达式字符的一些转换
2008/07/29 PHP
Linux下实现PHP多进程的方法分享
2012/08/16 PHP
用php+ajax新建流程(请假、进货、出货等)
2017/06/11 PHP
PHP+jQuery实现双击修改table表格功能示例
2019/02/21 PHP
jQuery 源码分析笔记(6) jQuery.data
2011/06/08 Javascript
jquery+json实现数据列表分页示例代码
2013/11/15 Javascript
判断及设置浏览器全屏模式
2014/04/20 Javascript
Javascript中实现String.startsWith和endsWith方法
2015/06/10 Javascript
简单封装js的dom查询实例代码
2016/07/08 Javascript
javascript和jQuery中的AJAX技术详解【包含AJAX各种跨域技术】
2016/12/15 Javascript
jQuery实现打开网页自动弹出遮罩层或点击弹出遮罩层功能示例
2017/10/19 jQuery
利用jsonp解决js读取本地json跨域的问题
2018/12/11 Javascript
Js Snowflake(雪花算法)生成随机ID的实现方法
2020/08/26 Javascript
[01:55]2014DOTA2国际邀请赛快报:国土生病 紧急去医院治疗
2014/07/10 DOTA
编写Python脚本来实现最简单的FTP下载的教程
2015/05/04 Python
栈和队列数据结构的基本概念及其相关的Python实现
2015/08/24 Python
Python3.4学习笔记之常用操作符,条件分支和循环用法示例
2019/03/01 Python
Python编译为二进制so可执行文件实例
2019/12/23 Python
以SQLite和PySqlite为例来学习Python DB API
2020/02/05 Python
Python开发企业微信机器人每天定时发消息实例
2020/03/17 Python
Python 如何在字符串中插入变量
2020/08/01 Python
Python3实现英文字母转换哥特式字体实例代码
2020/09/01 Python
如何通过python计算圆周率PI
2020/11/11 Python
Pycharm 如何一键加引号的方法步骤
2021/02/05 Python
晚会邀请函范文
2014/01/24 职场文书
妇产医师自荐信
2014/01/29 职场文书
三年级数学教学反思
2014/01/31 职场文书
小松树教学反思
2014/02/11 职场文书
设备售后服务承诺书
2014/05/30 职场文书
民族团结好少年事迹材料
2014/08/19 职场文书
新闻人物通讯稿
2014/10/09 职场文书
领导干部作风建设自查报告
2014/10/23 职场文书
2014年党风廉政建设工作总结
2014/11/19 职场文书
纪录片信仰观后感
2015/06/08 职场文书
2016年清明节红领巾广播稿
2015/12/17 职场文书
mysql聚集索引、辅助索引、覆盖索引、联合索引的使用
2022/02/12 MySQL