项目需求,需要根据当前的图片的路径值的来(加或者减)动态改变其值: state定义如下:

this.state={
basket01:0+require("../../img/egg/egg1_00.png"),
basket02:0+require('../../img/egg/egg2_00.png'),
basket03:0+require('../../img/egg/egg3_00.png'),
basket04:0+require('../../img/egg/egg4_00.png'),
}  

重点就是前面的数值:

render 代码如下:

<img className="egg-pen" src={this.state.basket01.substring(1,this.state.basket01.length)} alt=""/>

  

计算操作的方法代码为:

add (index){
let basket01Num = this.state.basket01.substring(0,1)
let basket02Num = this.state.basket02.substring(0,1)
let basket03Num = this.state.basket03.substring(0,1)
let basket04Num = this.state.basket04.substring(0,1)
let eggSum = this.state.eggSum
this.setState({
eggSum:--eggSum
})
if(index === 1){
++basket01Num
this.setState({
basket01:basket01Num+require(`../../img/egg/egg1_0${basket01Num}.png`)
})
}else if(index === 2){
++basket02Num
this.setState({
basket02:basket02Num+require(`../../img/egg/egg2_0${basket02Num}.png`)
})
}else if(index === 3){
++basket03Num
this.setState({
basket03:basket03Num+require(`../../img/egg/egg3_0${basket03Num}.png`)
})
}else{
++basket04Num
this.setState({
basket04:basket04Num+require(`../../img/egg/egg4_0${basket04Num}.png`)
}) }
}

  

项目实现的效果:

通过加减来改变图片里面的鸡蛋数量

react img 被自动转成base64,无法根据当前路径来动态改变值的解决办法的更多相关文章

  1. 在Closing事件中,将e.Cancle设置成true,则Windows无法关机和重启系统的解决办法

    最近在设计一个WinForm程序的时候遇到一个bug,就是From1窗体的关闭事件中设置了e.Cancle设置成true,导致系统无法关机重启,windows7 和windows xp都是这样. 我这 ...

  2. 导出成可运行jar包时所遇问题的解决办法 - 转载

    Could not find main method from given launch configuration 当我把我的Java工程导出为可运行的jar包时,遇到了“Could not fin ...

  3. 转换成的jar文件接收后台的信息乱码cmd解决办法

    运行——cmd——    java -jar -Dfile.encoding=utf-8 xxx.jar

  4. react中IOS手机里面两个input同时存在时,聚焦focus失效解决办法

    最近在做webapp搜索功能时,用到两个input同时存在时,轻点input聚焦时,ios手机软键盘弹起又失效,一直在寻找合理的解决办法,现在最简单的总结回顾: <一>bug显示 < ...

  5. C# 将DLL制作CAB包并在浏览器下载,自动安装。(Activex)(包括ie打开cab包一直弹出用户账户控制,确定之后无反应的解决办法。)

    制作Activex程序网上有很多方法我就不说了,我的业务主要做的就是将DLL打包成CAB供浏览器下载. 下面制作证书,以及制作cab包需要用到一些工具.我将工具包上传到自己的博客园里了,以供大家下载. ...

  6. react系列一,react虚拟dom如何转成真实的dom

    react,想必作为前端开发一定不陌生,组件化以及虚拟dom使得react成为最受欢迎额前端框架之一.我们知道react是基于虚拟dom的,但是什么是虚拟dom呢,其实就是一组js对象,那么我们今天就 ...

  7. delphi将图片转换成Base64编码函数

    {************************************************************************** 名称: BaseImage 参数: fn: TF ...

  8. 将上传图片转成base64(转)

    效果如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8"><titl ...

  9. WebApi系列~FromUri参数自动解析成实体的要求

    回到目录 关于webapi我之前写了一些文章,大家可以根据目录去浏览,今天要说的是个怪问题,也是被我忽略的一个问题,当你的Url参数需要被Api自动解析成实体的属性,实事上是要有条件的,不是所以属性都 ...

随机推荐

  1. Java处理Exception无法捕获的异常

    场景: 使用try...catch(Exception e){}来捕获异常,执行过程中线程中断或阻塞了,但是catch块中却并没有捕获到异常信息. try{ // 此处可能是调用一个远程的接口,或是调 ...

  2. 使用Python管理压缩包

    一. 使用tarfile库读取与创建tar包 1. 创建tar包 In [1]: import tarfile In [2]: with tarfile.open('demo.tar',mode='w ...

  3. IDEA自动编译设置

    ctrl+alt+s: ctrl+shift+alt+/:

  4. sklearn参数优化方法

    学习器模型中一般有两个参数:一类参数可以从数据中学习估计得到,还有一类参数无法从数据中估计,只能靠人的经验进行指定,后一类参数就叫超参数 比如,支持向量机里的C,Kernel,gama,朴素贝叶斯里的 ...

  5. 170823、SQL Update多表联合更新的方法

    SQL Update多表联合更新的方法 (1) sqlite 多表更新方法 update t1 set col1=t2.col1 from table1 t1 inner join table2 t2 ...

  6. day2 二、编程语言、python解释器和变量

    一.编程语言分类 1.机器语言 直接用计算机能理解的二进制指令编写程序,直接控制硬件,需要了解硬件的操作细节. 2.汇编语言 用英文标签取代二进制编写程序,也是直接控制硬件,也需要了解硬件的操作细节. ...

  7. vins-mono源码解读

    https://blog.csdn.net/q597967420/article/details/76099409

  8. {Django基础九之中间件} 一 前戏 二 中间件介绍 三 自定义中间件 四 中间件的执行流程 五 中间件版登陆认证

    Django基础九之中间件 本节目录 一 前戏 二 中间件介绍 三 自定义中间件 四 中间件的执行流程 五 中间件版登陆认证 六 xxx 七 xxx 八 xxx 一 前戏 我们在前面的课程中已经学会了 ...

  9. POJ 3764 - The xor-longest Path - [DFS+字典树变形]

    题目链接:http://poj.org/problem?id=3764 Time Limit: 2000MS Memory Limit: 65536K Description In an edge-w ...

  10. [No0000191]7种提高工作效率的Vim操作-Vim使用技巧(6)

    Vim一直被认为是一种非常高效的文本编辑器,但是对于普通用户来说,很难在入门的时候就体会到Vim的所谓高效性. 本文介绍7种提高你工作效率和生产力的Vim使用技巧,主要集中在对某个文件范围内的特定目标 ...