vue.js编译时给生成的文件增加版本号


Posted in Javascript onSeptember 17, 2018

vue.js在生成相关js和css文件的时候,名称是通过HASH的方式进行生成的,但是每次生成的文件基本都是一样的,那么浏览器就会缓存这些文件,为了在更新的时候能够保证js和css文件能够更新,那么我们需要针对webpack的配置文件进行修改;

打开webpack.prod.conf.js文件进行如下操作

1.增加版本变量(版本号暂时用时间代替)

var Version = new Date().getTime();

2.修改要生成的js和css文件的配置项,把刚刚声明的版本拼接进要生成的文件名中;

output: {
path: config.build.assetsRoot,
filename: utils.assetsPath('js/[name].[chunkhash].' + Version + '.js'),
chunkFilename: utils.assetsPath('js/[id].[chunkhash].' + Version + '.js')
},

3.执行编译命令npm run build 即可生成带版本号的js和css文件,打开dist目录就可以看到效果了;

ps:vue 用webpack打包文件名添加版本号

因浏览器缓存原因导致vue 打包的文件 导致偶尔会出现不能即使更新最新代码。因此在打包的文件名中添加一个版本号以便浏览器能区分。

解决方法:找到webpack .prod.conf.js

1.定义版本变量: const  Version = new Date().getTime(); // 这里使用的是时间戳 来区分 ,也可以自己定义成别的如:1.1

2.修改要生成的js和css文件的配置项,把刚刚声明的版本拼接进要生成的文件名中;

output: {

    path: config.build.assetsRoot,

     filename: utils.assetsPath('js/[name].[chunkhash].' + Version + '.js'),

    chunkFilename: utils.assetsPath('js/[id].[chunkhash].' + Version + '.js')

  },

然后直接 npm run build 打包后 就可以看到dist 文件里的js 文件名带上里版本号

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
filemanage功能中用到的common.js
Apr 08 Javascript
一个挺有意思的Javascript小问题说明
Sep 26 Javascript
无缝滚动改进版支持上下左右滚动(封装成函数)
Dec 04 Javascript
原生javascript实现图片按钮切换
Jan 12 Javascript
JS实现的简单鼠标跟随DiV层效果完整实例
Oct 31 Javascript
浅谈MVC+EF easyui dataGrid 动态加载分页表格
Nov 10 Javascript
获取当前月(季度/年)的最后一天(set相关操作及应用)
Dec 27 Javascript
jQuery表格(Table)基本操作实例分析
Mar 10 Javascript
Angularjs之ngModel中的值验证绑定方法
Sep 13 Javascript
vue cli3适配所有端方案的实现
Apr 13 Javascript
js String.prototype.trim字符去前后空格的扩展
Aug 23 Javascript
JS JQuery获取data-*属性值方法解析
Sep 01 jQuery
详解关于Vue版本不匹配问题(Vue packages version mismatch)
Sep 17 #Javascript
详解如何解决Vue和vue-template-compiler版本之间的问题
Sep 17 #Javascript
微信小程序中this.data与this.setData的区别详解
Sep 17 #Javascript
Puppet的一些技巧
Sep 17 #Javascript
详解JavaScript添加给定的标签选项
Sep 17 #Javascript
Element-ui tree组件自定义节点使用方法代码详解
Sep 17 #Javascript
vue-vuex中使用commit提交mutation来修改state的方法详解
Sep 16 #Javascript
You might like
学习php设计模式 php实现门面模式(Facade)
2015/12/07 PHP
PHP生成可点击刷新的验证码简单示例
2016/05/13 PHP
PHP常用函数之格式化时间操作示例
2019/10/21 PHP
PHP基于openssl实现非对称加密代码实例
2020/06/19 PHP
JavaScript中的类继承
2010/11/25 Javascript
JQuery 自定义CircleAnimation,Animate方法学习笔记
2011/07/10 Javascript
让js弹出窗口居前显示的实现方法
2013/07/10 Javascript
IE8下String的Trim()方法失效的解决方法
2013/11/08 Javascript
JavaScript检测鼠标移动方向的方法
2015/05/22 Javascript
jquery+ajax实现省市区三级联动 (封装和不封装两种方式)
2017/05/15 jQuery
详解Vue.js之视图和数据的双向绑定(v-model)
2017/06/23 Javascript
vue中各组件之间传递数据的方法示例
2017/07/27 Javascript
详解React中的组件通信问题
2017/07/31 Javascript
彻底理解js面向对象之继承
2018/02/04 Javascript
解决vue同一slot在组件中渲染多次的问题
2018/09/06 Javascript
在vue-cli的组件模板里使用font-awesome的两种方法
2018/09/28 Javascript
mpvue项目中使用第三方UI组件库的方法
2018/09/30 Javascript
小程序点击图片实现自动播放视频
2020/05/29 Javascript
Python简单实现子网掩码转换的方法
2016/04/13 Python
200行自定义python异步非阻塞Web框架
2017/03/15 Python
Django组件content-type使用方法详解
2019/07/19 Python
pytorch 更改预训练模型网络结构的方法
2019/08/19 Python
HTML5: Web 标准最巨大的飞跃
2008/10/17 HTML / CSS
美国专营婴幼儿用品的购物网站:buybuy BABY
2017/01/01 全球购物
倩碧香港官方网站:Clinique香港
2017/11/13 全球购物
英国女性运动服品牌:Sweaty Betty
2018/11/08 全球购物
Java中compareTo和compare的区别
2016/04/12 面试题
花卉与景观设计系大学生求职信
2013/10/01 职场文书
期末总结的个人自我评价
2013/11/02 职场文书
教师绩效考核方案
2014/01/21 职场文书
不拖欠农民工工资承诺书
2014/03/31 职场文书
铣床操作工岗位职责
2014/06/13 职场文书
授权委托书
2014/07/31 职场文书
党员干部廉洁自律承诺书
2015/04/28 职场文书
大学生见习总结报告
2015/06/24 职场文书
Django项目如何获得SSL证书与配置HTTPS
2021/04/30 Python