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 相关文章推荐
做网页的一些技巧(续)
Feb 01 Javascript
屏蔽F1~F12的快捷键的js函数
May 06 Javascript
JQUERY实现左侧TIPS滑进滑出效果示例
Jun 27 Javascript
js 赋值包含单引号双引号问题的解决方法
Feb 26 Javascript
浅谈javascript对象模型和function对象
Dec 26 Javascript
ECMAScript6中Map/WeakMap详解
Jun 12 Javascript
javascript每日必学之基础入门
Feb 16 Javascript
Easyui Tree获取当前选择节点的所有顶级父节点
Feb 14 Javascript
微信小程序 选项卡的简单实例
May 24 Javascript
vue单页应用在页面刷新时保留状态数据的方法
Sep 21 Javascript
浅谈vue项目用到的mock数据接口的两种方式
Oct 09 Javascript
JS 基本概念详细介绍
Oct 16 Javascript
小程序wx.getUserProfile接口的具体使用
js实现自动锁屏功能
Jun 02 #Javascript
如何将JavaScript将数组转为树形结构
Jun 02 #Javascript
关于antd tree 和父子组件之间的传值问题(react 总结)
使用react+redux实现计数器功能及遇到问题
微信小程序基础教程之echart的使用
vue实现水波涟漪效果的点击反馈指令
You might like
星际争霸 Starcraft 编年史
2020/03/14 星际争霸
php中print(),print_r(),echo()的区别详解
2014/12/01 PHP
php提交表单发送邮件的方法
2015/03/20 PHP
PHP 布尔值的自增与自减的实现方法
2018/05/03 PHP
php中的依赖注入实例详解
2019/08/14 PHP
Laravel框架控制器,视图及模型操作图文详解
2019/12/04 PHP
用jQuery实现检测浏览器及版本的脚本代码
2008/01/22 Javascript
JavaScript图片放大技术(放大镜)实现代码分享
2013/11/14 Javascript
同一个网页中实现多个JavaScript特效的方法
2015/02/02 Javascript
AngularJS入门教程之多视图切换用法示例
2016/11/02 Javascript
简单实现js悬浮导航效果
2017/02/05 Javascript
AngularJS表格样式简单设置方法示例
2017/03/03 Javascript
js实现一键复制功能
2017/03/16 Javascript
Angular2利用组件与指令实现图片轮播组件
2017/03/27 Javascript
基于JavaScript中字符串的match与replace方法(详解)
2017/12/04 Javascript
React-redux实现小案例(todolist)的过程
2019/09/29 Javascript
vue 全局环境切换问题
2019/10/27 Javascript
jQuery 动画与停止动画效果实例详解
2020/05/19 jQuery
Python基于列表模拟堆栈和队列功能示例
2018/01/05 Python
python使用if语句实现一个猜拳游戏详解
2019/08/27 Python
结合OpenCV与TensorFlow进行人脸识别的实现
2019/10/10 Python
如何用Python徒手写线性回归
2021/01/25 Python
Trina Turk官网:美国时装和泳装品牌
2018/06/10 全球购物
Nisbets法国:英国最大的厨房和餐饮设备供应商
2019/03/18 全球购物
C/C++程序员常见面试题一
2012/12/08 面试题
护理专业学生的求职信范文
2013/12/11 职场文书
好邻里事迹材料
2014/01/16 职场文书
优秀教师工作感言
2014/02/16 职场文书
会计师职业生涯规划范文
2014/02/18 职场文书
青年志愿者先进事迹
2014/05/06 职场文书
团日活动总结模板
2014/06/25 职场文书
工作态度不端正检讨书
2014/10/04 职场文书
院党委组织查摆问题对照检查材料思想汇报2014
2014/10/08 职场文书
查摆问题整改措施
2014/10/24 职场文书
Python编程编写完善的命令行工具
2021/09/15 Python
Ruby使用Mysql2连接操作MySQL
2022/04/19 Ruby