react图片引入不显示如何解决
本文小编为大家详细介绍“react图片引入不显示如何解决”,内容详细,步骤清晰,细节处理妥当,希望这篇“react图片引入不显示如何解决”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
react图片引入不显示的解决办法:1、通过“<img class="lazy" data-src={require("./zzsc1.png").default.default} />”方式引入图片;2、通过“import zzsc from "./zzsc1.png"”方式引入图片, 然后在img中直接引入变量即可。
一、react中图片引入方式
以前我们用img引入图片只需要如下即可,在react中这样写会报错:
<img class="lazy" data-src="../assets/zzsc1.png" />
下面我总结了两种方式:
用require方式引入路劲 错误用法:
<img class="lazy" data-src={require("./zzsc1.png")} />
上面这样写也是不会生效的,因为如果使用create-react-app和require导入图像,require返回一个ES模块而不是字符串。这是因为在file-loader中,esModule选项是默认启用的。
所以用以下方式之一导入图像:后面加上.default即可
<img class="lazy" data-src={require("./zzsc1.png").default.default} />
2、通过!important引入
import zzsc from "./zzsc1.png"
然后在img中直接引入变量即可,这个变量名字可任意取
<img class="lazy" data-src={zzsc} />
效果图如下:
然而有的时候你开发环境图片显示出来了,但是在打包后部署到测试环境上时会发现,图片又没了,抓耳挠腮,想不明白问题出在哪里。其实很简单,webpack在打包是只能检索到你public文件夹下的图片,所以在放图片素材的时候,图片位置也非常重要!统一都放到public文件下即可。上代码:
<img class="lazy" data-src='images/zzsc2.png' />
在打包是你路劲前面如果加“./”,则需要写全部路劲,不加更省事儿。
读到这里,这篇“react图片引入不显示如何解决”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网行业资讯频道。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341