Vue-cli配置打包文件本地使用的教程图解


Posted in Javascript onAugust 02, 2018

最近做的一个嵌入app的pc端项目,用的也是比较熟悉的vue-cli构建工具构建项目,需要的是打开dist文件夹入口html能加载到本地的静态文件,打包后的index.html加载文件如图:

 
Vue-cli配置打包文件本地使用的教程图解
Vue-cli配置打包文件本地使用的教程图解 

url中的路径据我们所知,最前面为一个反斜杠(/XX),表示从网站根目录开始搜索文件,如果需要相对当前文件夹则需以 ./或者不加反斜杠为路径开头,看来是打包后的文件路径有问题

于是就去找webpack.base.conf.js文件,有个output选项,output是webpack中对输出文件的配置,最常用的有fileName、path属性,指定输出文件的名称和在项目中的位置,publicPath可以为项目中的所有资源指定一个基础路径,也是我们解决这个问题的关键

官方文档:webpack output

如图:

Vue-cli配置打包文件本地使用的教程图解 

可以看到publicPath属性中有个三元运算,process.env.NODE_ENV又是个什么呢?

precess对象是一个全局变量,可以在应用程序中全局使用的(包括业务页面),
process.env属性返回一个包含用户环境信息的对象,
process.env.NODE_ENV就是用来定义环境变量,一般包括production(生产环境)、development(开发环境),我们在webpack中的各种配置也是根据环境变量来做相应处理。

既然是对生产环境的文件做处理自然是去找config.build对象,这个时候就来到config文件夹下找相关配置了

Vue-cli配置打包文件本地使用的教程图解
Vue-cli配置打包文件本地使用的教程图解 

index.js文件中输出两个对象(dev、 build), 在build对象中更改assetsPublicPath为'./'或者空字符串都行,这时候执行下打包命令 npm run build,在浏览器中打开dist文件夹下的index.html

Vue-cli配置打包文件本地使用的教程图解 

哈哈,文件加载过来了,但是,css文件中引的font文件路径加载不到,来看看这个时候font文件的路径

Vue-cli配置打包文件本地使用的教程图解 

由于我用了相对当前文件夹的路径,此时的url就是相对当前css文件所在目录的,此时dist文件夹结构如图:

Vue-cli配置打包文件本地使用的教程图解

我想到的解决办法是对font文件的输出做单独处理,还是webpack.base.config.js文件,

Vue-cli配置打包文件本地使用的教程图解 

更改font文件的输出路径,好了,npm run build

Vue-cli配置打包文件本地使用的教程图解 

铛啷啷,加载出来了。

总结

以上所述是小编给大家介绍的Vue-cli配置打包文件本地使用,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
html读出文本文件内容
Jan 22 Javascript
JS 文件传参及处理技巧分析
May 13 Javascript
九种js弹出对话框的方法总结
Mar 12 Javascript
文字垂直滚动之javascript代码
Jul 29 Javascript
jQuery四种选择器使用及示例
Jun 05 Javascript
Vue.js动态添加、删除选题的实例代码
Sep 30 Javascript
原生JS和jQuery操作DOM对比总结
Jan 19 Javascript
通过npm引用的vue组件使用详解
Mar 02 Javascript
JS工厂模式开发实践案例分析
Oct 17 Javascript
如何使用Jquery动态生成二级选项列表
Feb 06 jQuery
Vue和React有哪些区别
Sep 12 Javascript
vue本地构建热更新卡顿的问题“75 advanced module optimization”完美解决方案
Aug 05 Vue.js
详解使用VueJS开发项目中的兼容问题
Aug 02 #Javascript
重新认识vue之事件阻止冒泡的实现
Aug 02 #Javascript
深入浅出理解JavaScript高级定时器原理与用法
Aug 02 #Javascript
解决vue router组件状态刷新消失的问题
Aug 01 #Javascript
Promise.all中对于reject的处理方法
Aug 01 #Javascript
详解es6超好用的语法糖Decorator
Aug 01 #Javascript
Vue Router去掉url中默认的锚点#
Aug 01 #Javascript
You might like
mysql总结之explain
2012/02/27 PHP
php cookie使用方法学习笔记分享
2013/11/07 PHP
在html文件中也可以执行php语句的方法
2015/04/09 PHP
PHP MVC框架skymvc支持多文件上传
2016/05/26 PHP
Laravel框架生命周期与原理分析
2018/06/12 PHP
解决php extension 加载顺序问题
2019/08/16 PHP
在Laravel 的 Blade 模版中实现定义变量
2019/10/14 PHP
JavaScript中的作用域链和闭包
2012/06/30 Javascript
js将当前时间格式转换成时间搓(自写)
2013/09/26 Javascript
javascript的数组和常用函数详解
2014/05/09 Javascript
jQuery自定义动画函数实例详解(附demo源码)
2015/12/10 Javascript
jQuery+JSON实现AJAX二级联动实例分析
2015/12/18 Javascript
详解Vue用axios发送post请求自动set cookie
2017/05/10 Javascript
js canvas实现简单的图像扩散效果
2020/06/28 Javascript
微信小程序报错:this.setData is not a function的解决办法
2017/09/27 Javascript
浅谈es6 javascript的map数据结构
2017/12/14 Javascript
Vue CLI3中使用compass normalize的方法
2019/05/30 Javascript
Python获取网页上图片下载地址的方法
2015/03/11 Python
python基础之入门必看操作
2017/07/26 Python
python进阶_浅谈面向对象进阶
2017/08/17 Python
Python父目录、子目录的相互调用方法
2019/02/16 Python
Django 多环境配置详解
2019/05/14 Python
Python 使用folium绘制leaflet地图的实现方法
2019/07/05 Python
python实现逆滤波与维纳滤波示例
2020/02/26 Python
在Keras中CNN联合LSTM进行分类实例
2020/06/29 Python
webapp字号大小跟随系统字号大小缩放的示例代码
2018/12/26 HTML / CSS
详解H5 活动页之移动端 REM 布局适配方法
2017/12/07 HTML / CSS
澳大利亚波希米亚风时尚品牌:Tree of Life
2019/09/15 全球购物
程序运行正确, 但退出时却"core dump"了,怎么回事
2014/02/19 面试题
委托培训协议书
2014/11/17 职场文书
英语专业毕业论文答辩开场白
2015/05/27 职场文书
辩论赛新闻稿
2015/07/17 职场文书
在pycharm中无法import所安装的库解决方案
2021/05/31 Python
spring cloud 配置中心客户端启动遇到的问题
2021/09/25 Java/Android
什么是css原子化,有什么用?
2022/04/24 HTML / CSS
我国拿下天问一号火星着陆区附近 22 个地理实体命名:平乐、西柏坡、古田、漠河等
2022/04/29 数码科技