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

Posted keleyz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了react img 被自动转成base64,无法根据当前路径来动态改变值的解决办法相关的知识,希望对你有一定的参考价值。

项目需求,需要根据当前的图片的路径值的来(加或者减)动态改变其值: 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)} />

  

计算操作的方法代码为:

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,无法根据当前路径来动态改变值的解决办法的主要内容,如果未能解决你的问题,请参考以下文章

安卓怎么将html中的img转成base64

react native 把图片转成base64

php把网络图片转Base64编码。

将图片转成base64写进hml,无需依赖本地文件

canvas将图片转成base64格式 以及 验证图片是否透明

ajax接口返回图片类型数据,转为base64赋值给img