解决vue打包之后静态资源图片失效的问题


Posted in Javascript onFebruary 21, 2018

1、问题描述

在项目开发中,当我们通过npm run build打包之后将文件放在服务器上时通常会出现图片失效问题,控制台中提示某个图片没有找到(404错误),这些图片可以是以src引入的图片, 也可以是css中定义的背景图片。图片能否显示与你的静态资源文件存在位置和引入的路径直接相关,下面是我的其中一个项目的文件存放以及路径书写方式!

2、解决方法之一

静态资源static存放位置放在src目录下

解决vue打包之后静态资源图片失效的问题 

解决vue打包之后静态资源图片失效的问题

你可能会问为什么放在src目录下?放在跟src同级目录下不可以吗?好吧,一开始我也是放在src同级目录下,但是在某个css文件中引入背景图片的时候打包之后图片失效,我是这样引入的

解决vue打包之后静态资源图片失效的问题 

实践证明这个写法是错误的,这个会在你打包的时候直接抱一大堆错(如css-loader错误),连项目都跑不起来。

于是我用下面的写法:

解决vue打包之后静态资源图片失效的问题 

这种写法也是不可以的,原因是你的静态资源文件static不在src目录,而在vue中src目录是相对根目录是src目录,所以如果你想用上面的写法,必须要把static放在src目录下。如上面图一图二

注意:不能把static/images/user.png写成 /static/images/user.png,否则图片还是失效。

以上是关于文件存放位置以及css中引入图片问题,如果是通过img标签引入图片的话,相对简单,直接写绝对地址就行了,并且静态资源static文件夹的位置可以在src里面,也可以放在与src同级下,但是为了不出现上面情况,放在src里面即可!

img引入图片:

解决vue打包之后静态资源图片失效的问题 

以上是一种解决图片失效问题的方法,当然,如果非要把static静态资源目录放在与src同级目录下,也是有解决方法,例如通过导入图片的方式(本人未实践),可以自行尝试!

这篇解决vue打包之后静态资源图片失效的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js/jquery获取浏览器窗口可视区域高度和宽度以及滚动条高度实现代码
Dec 17 Javascript
JS获取下拉框显示值和判断单选按钮的方法
Jul 09 Javascript
理解javascript中DOM事件
Dec 25 Javascript
JavaScript程序中的流程控制语句用法总结
May 23 Javascript
jQuery实现表格隔行及滑动,点击时变色的方法【测试可用】
Aug 20 Javascript
js从数组中删除指定值(不是指定位置)的元素实现代码
Sep 13 Javascript
基于chosen插件实现人员选择树搜索自动筛选功能
Sep 24 Javascript
关于自定义Egg.js的请求级别日志详解
Dec 12 Javascript
深入了解query和params的使用区别
Jun 24 Javascript
vue 如何使用递归组件
Oct 23 Javascript
Vue3+elementui plus创建项目的方法
Dec 01 Vue.js
如何实现vue的tree组件
Dec 03 Vue.js
Vue项目中设置背景图片方法
Feb 21 #Javascript
使用vue + less 实现简单换肤功能的示例
Feb 21 #Javascript
利用angular、react和vue实现相同的面试题组件
Feb 19 #Javascript
jQuery实现滚动到底部时自动加载更多的方法示例
Feb 18 #jQuery
Angular实现的进度条功能示例
Feb 18 #Javascript
Angular2.0实现modal对话框的方法示例
Feb 18 #Javascript
JS实现运动缓冲效果的封装函数示例
Feb 18 #Javascript
You might like
简单实现限定phpmyadmin访问ip的方法
2013/03/05 PHP
php实现的三个常用加密解密功能函数示例
2017/11/06 PHP
DOM2非标准但却支持很好的几个属性小结
2012/01/21 Javascript
js获取域名的方法
2015/01/27 Javascript
BootStrap框架个人总结(bootstrap框架、导航条、下拉菜单、轮播广告carousel、栅格系统布局、标签页tabs、模态框、菜单定位)
2016/12/01 Javascript
vuejs指令详解
2017/02/07 Javascript
node.js爬虫爬取拉勾网职位信息
2017/03/14 Javascript
JS实现的倒计时恢复按钮点击功能【可用于协议阅读倒计时】
2018/04/19 Javascript
详解redis在nodejs中的应用
2018/05/02 NodeJs
webpack4 + react 搭建多页面应用示例
2018/08/03 Javascript
原生JS封装_new函数实现new关键字的功能
2018/08/12 Javascript
vue 引用自定义ttf、otf、在线字体的方法
2019/05/09 Javascript
Angular中innerHTML标签的样式不起作用的原因解析
2019/06/18 Javascript
解决layui弹框失效的问题
2019/09/09 Javascript
node使用mysql获取数据库数据中文乱码问题的解决
2019/12/02 Javascript
浅谈vue 二级路由嵌套和二级路由高亮问题
2020/08/06 Javascript
python发送邮件的实例代码(支持html、图片、附件)
2013/03/04 Python
python发腾讯微博代码分享
2014/01/10 Python
在Python中使用cookielib和urllib2配合PyQuery抓取网页信息
2015/04/25 Python
python学习之matplotlib绘制散点图实例
2017/12/09 Python
Python实现进程同步和通信的方法
2018/01/02 Python
python读取各种文件数据方法解析
2018/12/29 Python
Numpy与Pytorch 矩阵操作方式
2019/12/27 Python
python可迭代对象去重实例
2020/05/15 Python
python3.6.8 + pycharm + PyQt5 环境搭建的图文教程
2020/06/11 Python
CSS3实现可爱的小黄人动画
2016/07/11 HTML / CSS
利用HTML5中Geolocation获取地理位置调用Google Map API在Google Map上定位
2013/01/23 HTML / CSS
华为慧通面试题
2012/09/11 面试题
数控加工专业毕业生自荐信
2013/09/27 职场文书
教师党员公开承诺书
2014/03/25 职场文书
求职信怎么写范文
2014/05/26 职场文书
2014年大学生职业规划书:未来不是梦,只要勇敢冲!
2014/09/22 职场文书
Sql-Server数据库单表查询 4.3实验课
2021/04/05 SQL Server
go使用Gin框架利用阿里云实现短信验证码功能
2021/08/04 Golang
星际争霸:毕姥爷vs解冻03
2022/04/01 星际争霸
win11无法添加打印机怎么办? 提示windows无法打开添加打印机的解决办法
2022/04/05 数码科技