问答

React中img的src属性用相对路径和require有什么区别?

作者:admin 2021-04-22 我要评论

以 Create-react-app 为例 当设置 img src = {require('../public/logo.png')} alt=""/img 时,审查元素可以看到是将图片转换成base64,然后再作为src给图片。 ...

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>)

Create-react-app为例

  1. 当设置<img src = {require('../public/logo.png')} alt=""></img>时,审查元素可以看到是将图片转换成base64,然后再作为src给图片。
  2. 当设置<img src = {'/logo.png'} alt=""></img>时,审查元素可以看到是直接访问url/logo.png的图片。

打包出来的文件大小都相同,但是require中logo如果是变量,还可能导致Cannot find module导致白屏。

那么什么时候用require?什么时候用方式2?

个人理解require的优势在于图片文件可以放在模块下,就能直接引用。而方式二必须放到public文件下。

有没有办法让图片放在模块下就能直接用方式二使用? 或者说我对require的理解有问题?

###

什么时候用其实看你自己了,我一般放public

  • public下的文件是静态文件,不会经过webpack打包,相当于一个外链资源
  • require的文件,会被url-loader处理,有个limit字段(可自行修改),如果图片大小小于limit,会被转为base64

版权声明:本文转载自网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本站转载出于传播更多优秀技术知识之目的,如有侵权请联系QQ/微信:153890879删除

相关文章
  • React中img的src属性用相对路径和requi

    React中img的src属性用相对路径和requi

  • 微信小程序封装request请求,为什么会

    微信小程序封装request请求,为什么会

  • 项目中的node_modules文件中的第三方包

    项目中的node_modules文件中的第三方包

  • 这个东西可以简化吗

    这个东西可以简化吗

腾讯云代理商
海外云服务器