VUE打包图片加载失败问题

VUE打包图片加载失败问题昨天的搬运工,今天的小雷锋。 问题描述,使用VUE-CLI打包后,出现图片无法显示情况。这里可能存在两种情况:静态资源CSS中使用图片作为背景图片使用时。 在JS中生成图片标签后,再设置图片路径时。 当你吃着火锅唱着歌,一路npm-run-dev都相安无事的时候,打包完事后,发现突然图片显示异常了!如果你观察后,你会发现组件中使用的img标签都没任何问题,我们css中的背景图片…

大家好,又见面了,我是你们的朋友全栈君。

昨天的搬运工,今天的小雷锋。

 问题描述,使用VUE-CLI打包后,出现图片无法显示情况。这里可能存在两种情况:

  • 静态资源CSS中使用图片作为背景图片使用时。
  • 在JS中生成图片标签后,再设置图片路径时。

 当你吃着火锅唱着歌,一路npm-run-dev都相安无事的时候,打包完事后,发现突然图片显示异常了!

如果你观察后,你会发现组件中使用的img标签都没任何问题,我们css中的背景图片以及在js中后加载的图片无法正常显示。

这时候就已经可以发现不是图片本身出现的问题了。

<img src="这种没有问题">

background: url(../../../static/img/这种可能会出现问题.png);

let imgAge = document.createElement("img");
imgAge.src = '../../static/img/这种也可能会出现问题.png';
_this.appendChild(imgAge)

 解决

当我们看过报错信息后会发现,是因为图片的路径问题,在statich后面多加了两层文件,而他们是不存在的,这就导致了无法找到图片正确的路径。

更改build/utils.js文件中的 ExtractTextPlugin 的 options配置项.

if (options.extract) {
  return ExtractTextPlugin.extract({
    use: loaders,
    publicPath: '../../', //注意: 此处根据路径, 自动更改
    fallback: 'vue-style-loader'
      })
    } else {
      return ['vue-style-loader'].concat(loaders)
    }
}

对于第二种情况,需要修改src的获取方式:用require请求即可。

let imgAge = document.createElement("img");
imgAge.src = require('../../static/img/icon_s@2x.png')
_this.appendChild(imgAge)

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/136940.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java free hd 798,[https://www.798ziyuan.com/]Java入门级项目全程实录V2.0

    java free hd 798,[https://www.798ziyuan.com/]Java入门级项目全程实录V2.0Java入门级项目全程实录V2.0798资源网免责声明:[Java入门级项目全程实录V2.0]由分享人op**开源于2018-09-1119:35上传到百度网盘。此页面由蜘蛛程序自动抓取,以非人工方式自动生成,只作交流和学习使用。本网站本身不储存任何资源文件,其资源文件的安全性和完整性需要您自行判断,感谢您对本站的支持。Java入门级项目全程实录V2.0|____《Java入门级项…

    2022年7月7日
  • 值得推荐的Idea十几大优秀插件

    值得推荐的Idea十几大优秀插件最近,闲来无事,为了改变一下枯燥的编程环境,特地搜寻了下有助提升代码功力的插件,够装逼,够狂,拽,屌~绚丽的画面,多彩的跳动,让你区别其他程序猿。产品,测试,开发看到你的界面,眼睛都会发光~算了,我实在是编不下去,自己去体验吧~PS:☆半星★一星主要是以狂拽屌指数来排名12、Stackoverflow这个插件其实是最实用的插件,程序猿遇到的问题…

    2022年6月16日
  • 惠普电脑指纹锁_利用计算机对指纹进行识别

    惠普电脑指纹锁_利用计算机对指纹进行识别按下电源键,输入密码,咦?密码输错了……再输……咦?又错了!开机密码是啥来着?设置开机密码很普遍(图片引自网络)相信很多朋友都有过上述经历。为了让笔记本更安全,于是设置了一个开机密码。并且为了提高密码的安全性,时常需要过段时间就更新一次,所以经常一着急就给忘了。设置密码虽好,但是它也有两点弊端,一是增加了开机时间,二是存在遗忘和被盗的风险。想想看,你每次开机是不是都要输入一组6位左右的数字或者字母…

    2022年8月10日
  • kill命令杀死所有进程_linux 杀死进程

    kill命令杀死所有进程_linux 杀死进程1kill:根据进程号(PID)杀死进程在linux上,一般常用的杀死进程的命令是kill,但是也有缺陷,下面说1、查看指定名称的进程,如下我查看运行python程序的进程pythonaux|greppython2、根据进程号(PID)杀死进程:第二列显示的就是进程号killPID3、强制杀死进程,有些进程可能杀不死,就加个-9参数,强制让它死掉!kill-9PID5、杀死多个进程,在后面跟多个进程的PID号即可kill-9PID1PID2PID3…

    2022年10月28日
  • kali vim使用教程_kali命令

    kali vim使用教程_kali命令新手上路,vim编译器不会保存,不会退出,今天教大家如何使用vim编译器的指令vim编译器在使用是会在做左下角出现提示,通常插入表示的是可进行编辑,输入的意思,当你按下Esc键,就会取消编辑状态,但不会退出,你可以按着shift+;输出一个【:】然后输入【:wq!1.txt】已经有【:】的不用在输入【:】,w表示保存为q表示退出!表示强制在里面遇到的任何情况都可以按Esc即退出编辑状态可以按下小写【i】即可进入插入模式,也就是编辑状态下面我把…

    2022年9月28日
  • noip2012借教室_noip 百度网盘

    noip2012借教室_noip 百度网盘借教室在大学期间,经常需要租借教室。大到院系举办活动,小到学习小组自习讨论,都需要向学校申请借教室。教室的大小功能不同,借教室人的身份不同,借教室的手续也不一样。面对海量租借教室的信息,我们自然希望编程解决这个问题。我们需要处理接下来n天的借教室信息,其中第i天学校有ri个教室可供租借。共有m份订单,每份订单用三个正整数描述,分别为dj,sj,tj,表示某租借者需要从第sj天到第tj天租借教室(

    2022年8月22日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号