vue :src 文件路径错误问题的解决方法


Posted in Javascript onMay 15, 2018

首先先说明下vue-cli的assets和static的两个文件的区别,因为这对你理解后面的解决办法会有所帮助

 assets:在项目编译的过程中会被webpack处理解析为模块依赖,只支持相对路径的形式,如< img src=”./logo.png”>background:url(./logo.png),”./logo.png”是相对资源路径,将有webpack解析为模块依赖
 static:在这个目录下文件不会被webpack处理,简单就是说存放第三方文件的地方,不会被webpack解析。他会直接被复制到最终的打包目录(默认是dist/static)下。必须使用绝对路径引用这些文件,这是通过config.js文件中的build.assetsPublicbuild.assertsSubDirectory链接来确定的。任何放在static/中文件需要以绝对路径的形式引用:/static[filename]
 根据webpack的特性,总的来说就是static放不会变动的,第三档的文件,asserts放可能会变动的文件

问题来了,用js动态加载assets或者本文件的图片出现404的状态码

代码实例

<li v-for="(item,index) in images" :key="index">
<img :src="item.src"></li>
//js部分
data(){
 return {
 images:[{src:'./1.png'},{./2.png}]
 }
}

跑起来发现图片不显示,错误码为404,

 原因:在webpack中会将图片图片来当做模块来用,因为是动态加载的,所以url-loader将无法解析图片地址,然后npm run dev 或者npm run build之后导致路径没有被加工【被webpack解析到的路径都会被解析为/static/img/[filename].png,完整地址为localhost:8080/static/img/[filename].png

 解决办法:

①将图片作为模块加载进去,比如images:[{src:require(‘./1.png')},{src:require(‘./2.png')}]这样webpack就能将其解析。

②将图片放到static目录下,但必须写成绝对路径如images:[{src:”/static/1.png”},{src:”/static/2.png”}]这样图片也会显示出来,当然你也可以通过在webpack.base.config.js定义来缩短路径的书写长度。

当然你说当本地图片太多时,这样写岂不是很麻烦,那么其实我们是一这样简化操作的。

第一步:在static里面新建一个json文件夹

vue :src 文件路径错误问题的解决方法

第二部:填写json文件,如图

vue :src 文件路径错误问题的解决方法

第三部:将json引入响应的vue文件中,解析引用就行了

vue :src 文件路径错误问题的解决方法

总结

以上所述是小编给大家介绍的vue :src 文件路径错误问题的简单解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
Jquery调用webService远程访问出错的解决方法
May 21 Javascript
使用jquery自定义鼠标样式满足个性需求
Nov 05 Javascript
面向对象设计模式的核心法则
Nov 10 Javascript
jtable列中自定义button示例代码
Nov 21 Javascript
关于安卓手机微信浏览器中使用XMLHttpRequest 2上传图片显示字节数为0的解决办法
May 17 Javascript
JS控制静态页面之间传递参数获取参数并应用的简单实例
Aug 10 Javascript
jQuery图片瀑布流的简单实现代码
Mar 15 Javascript
Javascript防止图片拉伸的自适应处理方法
Dec 26 Javascript
react 实现页面代码分割、按需加载的方法
Apr 03 Javascript
Node.js如何对SQLite的async/await封装详解
Feb 14 Javascript
Vue2.4+新增属性.sync、$attrs、$listeners的具体使用
Mar 08 Javascript
详解JavaScript原型与原型链
Nov 16 Javascript
利用npm 安装删除模块的方法
May 15 #Javascript
vux uploader 图片上传组件的安装使用方法
May 15 #Javascript
使用webpack搭建react开发环境的方法
May 15 #Javascript
浅谈Node.js 沙箱环境
May 15 #Javascript
npm全局模块卸载及默认安装目录修改方法
May 15 #Javascript
WebPack配置vue多页面的技巧
May 15 #Javascript
修改npm全局安装模式的路径方法
May 15 #Javascript
You might like
PHP多个版本的分析解释
2011/07/21 PHP
PHP goto语句简介和使用实例
2014/03/11 PHP
PHP实现中文圆形印章特效
2015/06/19 PHP
微信网页授权(OAuth2.0) PHP 源码简单实现
2016/08/29 PHP
php微信公众号开发(2)百度BAE搭建和数据库使用
2016/12/15 PHP
PHP单例模式与工厂模式详解
2017/08/29 PHP
php 中htmlentities导致中文无法查询问题
2018/09/10 PHP
解决在laravel中auth建立时候遇到的问题
2019/10/15 PHP
JavaScript库 开发规则
2009/01/31 Javascript
用JavaScript对JSON进行模式匹配 (Part 2 - 实现)
2010/07/17 Javascript
让网页跳转到指定位置的jquery代码非书签
2013/09/06 Javascript
Jquery 点击按钮自动高亮实现原理及代码
2014/04/25 Javascript
jquery引用方法时传递参数原理分析
2014/10/13 Javascript
jQuery插件实现带圆点的焦点图片轮播切换
2016/01/18 Javascript
vue组件文档(.md)中如何自动导入示例(.vue)详解
2019/01/25 Javascript
vue.js的状态管理vuex中store的使用详解
2019/11/08 Javascript
vue基础知识--axios合并请求和slot
2020/06/04 Javascript
Vue包大小优化的实现(从1.72M到94K)
2021/02/18 Vue.js
Python采用Django开发自己的博客系统
2020/09/29 Python
python使用super()出现错误解决办法
2017/08/14 Python
Python爬虫PyQuery库基本用法入门教程
2018/08/04 Python
浅谈Python中的字符串
2020/06/10 Python
python开发入门——set的使用
2020/09/03 Python
kmart凯马特官网:美国最大的打折零售商和全球最大的批发商之一
2016/11/17 全球购物
意大利体育用品和运动服网上商店:Maxi Sport
2019/09/14 全球购物
金山毒霸系列的笔试题
2013/04/13 面试题
技校教师求职简历的自我评价
2013/10/20 职场文书
护理专业推荐信
2013/11/07 职场文书
出纳员岗位职责
2014/03/13 职场文书
数学教研活动总结
2014/07/02 职场文书
学习党的群众路线教育实践活动剖析材料
2014/10/13 职场文书
对领导班子的意见和建议
2015/06/08 职场文书
新学期主题班会
2015/08/17 职场文书
2019年恭贺升学祝福语集锦
2019/08/15 职场文书
python前后端自定义分页器
2022/04/13 Python
JS class语法糖的深入剖析
2022/07/07 Javascript