react 项目中引入图片的几种方式


Posted in Javascript onJune 02, 2021

img标签引入图片

因为react其实是通过js的reader函数渲染的页面,所以直接写src=“路径”是无法引入图片

我们可以像引入模块一样引入图片

import img from './../../../../asset/img/user.png'

需要用下面的方式引入

<img src={require('../images/picture.png')} alt="标签"/>

背景图片引入

1 第一种就是常规的 新建一个css文件,然后就可以直接写css语法了

.img {
   background: url('../images/picture.png') 0 0 no-repeat;
}

2 第二种就是在react组件中通过变量的方式引入,然后直接将变量赋值给img标签

// 引入图片文件
import bg from '../images/bg.png'
// 通过字符串拼接的方式定义一个样式对象
const imgStyle = {
  width: '100%',
  height: '500px',
  backgroundImage: 'url(' + bg + ')',
  backgroundPosition: 'center 0',
  backgroundSize: '2045px 472px',
  backgroundRepeat: 'no-repeat'
}
class Home extends Component {
 constructor () {
  super (props)
 }
 render() {
  // 最后直接将变量赋值给标签
  <div style="imgStyle">
   ...
  </div>
 }
}

require

我们也可以将相对路径用require包裹之后直接赋给src,就像在vue中一样。

<img width="100" height="100" src={require('./../../../../asset/img/user.png')} alt="" className={'user-img'}/>

**注意:**这里有个问题,因为file-loader库的版本不同,这里有些细微差别。高版本的file-loader库esModule默认为true,require返回一个ES模块而不是字符串路径。而这个ES模块的default属性为字符串路径,所以应该这样写:

<img width="100" height="100" src={require('./../../../../asset/img/user.png').default} alt="" className={'user-img'}/>

我们也不要去纠结我们的file-loader版本到底是多少,当我们直接使用require还是无法正常显示图片的时候,我们在require后面加个.default即可

到此这篇关于react 项目中引入图片的几种方式的文章就介绍到这了,更多相关react 引入图片内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
Firefox和IE浏览器兼容JS脚本写法小结
Jul 07 Javascript
extjs中grid中嵌入动态combobox的应用
Jan 01 Javascript
asp.net中System.Timers.Timer的使用方法
Mar 20 Javascript
jQuery 重复加载错误以及修复方法
Dec 16 Javascript
jQuery实现Tab菜单滚动切换的方法
Sep 21 Javascript
Bootstrap基本插件学习笔记之模态对话框(16)
Dec 08 Javascript
Javascript中常用类型的格式化方法小结
Dec 26 Javascript
es6中的解构赋值、扩展运算符和rest参数使用详解
Sep 28 Javascript
浅谈webpack下的AOP式无侵入注入
Nov 12 Javascript
webpack热模块替换(HMR)/热更新的方法
Apr 05 Javascript
微信小程序如何连接Java后台
Aug 08 Javascript
layui form表单提交后实现自动刷新
Oct 25 Javascript
小程序wx.getUserProfile接口的具体使用
js实现自动锁屏功能
Jun 02 #Javascript
如何将JavaScript将数组转为树形结构
Jun 02 #Javascript
关于antd tree 和父子组件之间的传值问题(react 总结)
使用react+redux实现计数器功能及遇到问题
微信小程序基础教程之echart的使用
vue实现水波涟漪效果的点击反馈指令
You might like
PHP中利用substr_replace将指定两位置之间的字符替换为*号
2011/01/27 PHP
PHP 查找字符串常用函数介绍
2012/06/07 PHP
php实现的debug log日志操作类实例
2016/07/12 PHP
PHP二维关联数组的遍历方式(实例讲解)
2017/10/18 PHP
详细解读php的命名空间(一)
2018/02/21 PHP
laravel执行php artisan migrate报错的解决方法
2019/10/09 PHP
yii框架结合charjs实现统计30天数据的方法
2020/04/04 PHP
科讯商业版中用到的ajax空间与分页函数
2007/09/02 Javascript
让新消息在网页标题闪烁提示的jQuery代码
2013/11/04 Javascript
js的参数有长度限制吗?发现不能超过2083个字符
2014/04/20 Javascript
js delete 用法(删除对象属性及变量)
2014/08/24 Javascript
node.js中的fs.truncate方法使用说明
2014/12/15 Javascript
JavaScript设置表单上传时文件个数的方法
2015/08/11 Javascript
Js查找字符串中出现次数最多的字符及个数实例解析
2016/09/05 Javascript
BootStrap 模态框实现刷新网页并关闭功能
2017/01/04 Javascript
详解使用vue-router进行页面切换时滚动条位置与滚动监听事件
2017/03/08 Javascript
Node使用Sequlize连接Mysql报错:Access denied for user ‘xxx’@‘localhost’
2018/01/03 Javascript
JS实现带导航城市列表以及输入搜索功能
2018/01/04 Javascript
webpack公共组件引用路径简化小技巧
2018/06/15 Javascript
vue解决弹出蒙层滑动穿透问题的方法
2018/09/22 Javascript
微信小程序按钮点击跳转页面详解
2019/05/06 Javascript
Vue + Element UI图片上传控件使用详解
2019/08/20 Javascript
Vue可自定义tab组件用法实例
2019/10/24 Javascript
vue 解决IOS10低版本白屏的问题
2020/11/17 Javascript
python开发简易版在线音乐播放器
2017/03/03 Python
Django 用户认证组件使用详解
2019/07/23 Python
Django用户认证系统 组与权限解析
2019/08/02 Python
python里glob模块知识点总结
2021/01/05 Python
生产车间主管岗位职责
2013/12/28 职场文书
党员违纪检讨书
2014/02/18 职场文书
男女朋友协议书
2014/04/23 职场文书
村委会贫困证明范本
2014/09/17 职场文书
2014年保险公司工作总结
2014/11/22 职场文书
幼儿园教师节活动总结
2015/03/23 职场文书
Nginx如何配置Http、Https、WS、WSS的方法步骤
2021/05/11 Servers
《我的美好婚事》动画化决定纪念插画与先导PV公开
2022/04/06 日漫