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 相关文章推荐
Javascript解决常见浏览器兼容问题的12种方法
Jan 04 Javascript
javascript奇异的arguments分析
Oct 20 Javascript
jQuery初学:find()方法及children方法的区别分析
Jan 31 Javascript
jQuery Mobile的loading对话框显示/隐藏方法分享
Nov 26 Javascript
BootStrapTable 单选及取值的实现方法
Jan 10 Javascript
EasyUI Tree树组件无限循环的解决方法
Sep 27 Javascript
Node.js中,在cmd界面,进入退出Node.js运行环境的方法
May 12 Javascript
vue监听input标签的value值方法
Aug 27 Javascript
JavaScript实现简单随机点名器
Nov 21 Javascript
js函数柯里化的方法和作用实例分析
Apr 11 Javascript
Vue路由切换页面不更新问题解决方案
Jul 10 Javascript
Vue优化:常见会导致内存泄漏问题及优化详解
Aug 04 Javascript
小程序wx.getUserProfile接口的具体使用
js实现自动锁屏功能
Jun 02 #Javascript
如何将JavaScript将数组转为树形结构
Jun 02 #Javascript
关于antd tree 和父子组件之间的传值问题(react 总结)
使用react+redux实现计数器功能及遇到问题
微信小程序基础教程之echart的使用
vue实现水波涟漪效果的点击反馈指令
You might like
php 验证码(倾斜,正弦干扰线,黏贴,旋转)
2013/06/29 PHP
页面利用渐进式JPEG来提升用户体验度
2014/12/01 PHP
php给图片加文字水印
2015/07/31 PHP
php加密之discuz内容经典加密方式实例详解
2017/02/04 PHP
PHP实现求连续子数组最大和问题2种解决方法
2017/12/26 PHP
JavaScript 事件的一些重要说明
2009/10/25 Javascript
document.body.scrollTop 值总为0的解决方法 比较常见的标准问题
2009/11/30 Javascript
js 操作select与option(示例讲解)
2013/12/20 Javascript
用Jquery.load载入页面实现局部刷新
2014/01/22 Javascript
JavaScript的21条基本知识点
2014/03/04 Javascript
jquery动态添加删除一行数据示例
2014/06/12 Javascript
JS实现很酷的水波文字特效实例
2015/02/26 Javascript
js代码实现无缝滚动(文字和图片)
2015/08/20 Javascript
原生js实现图片轮播特效
2015/12/18 Javascript
JS组件Bootstrap实现下拉菜单效果代码
2016/04/26 Javascript
JS提示:Uncaught SyntaxError:Unexpected token ) 错误的解决方法
2016/08/19 Javascript
javascript函数中的3个高级技巧
2016/09/22 Javascript
Vue2.0 UI框架ElementUI使用方法详解
2017/04/14 Javascript
node.js连接MongoDB数据库的2种方法教程
2017/05/17 Javascript
Vue用v-for给src属性赋值的方法
2018/03/03 Javascript
解决淘宝cnpm 安装后cnpm不是内部或外部命令的问题
2018/05/17 Javascript
vscode+gulp轻松开发小程序的完整步骤
2020/10/18 Javascript
Python序列之list和tuple常用方法以及注意事项
2015/01/09 Python
Python多线程编程简单介绍
2015/04/13 Python
Django中几种重定向方法
2015/04/28 Python
Python Json序列化与反序列化的示例
2018/01/31 Python
详解Python的三种可变参数
2019/05/08 Python
利用python和百度地图API实现数据地图标注的方法
2019/05/13 Python
pyqt5 comboBox获得下标、文本和事件选中函数的方法
2019/06/14 Python
查看已安装tensorflow版本的方法示例
2020/04/19 Python
Python利用matplotlib绘制折线图的新手教程
2020/11/05 Python
高效课堂标语
2014/06/26 职场文书
党员评议思想汇报
2014/10/08 职场文书
幼儿园大班毕业评语
2014/12/31 职场文书
2019最新公司租房合同(例文)
2019/07/18 职场文书
分享一些Java的常用工具
2021/06/11 Java/Android