如何使用字符串和更新状态更新状态

时间:2018-11-22 08:48:00

标签: reactjs

我在这里用字符串更新状态,该字符串的工作方式如下:

 changeColorE(e){
    this.setState({error:"style={{backgroundColor :" +this.state.colorNew +"}}"},()=>console.log("-------",this.state.error))
 }

我已渲染

const { error }=this.state;

我在这里收到错误消息 {错误} ,它说

Parsing error: Unexpected token, expected "..."

<div className="col-2" {error}   onClick={this.changeColorE.bind(this)}></div>

如何对元素进行 {error} 这样的操作?我是走正确的路还是走正确的路? 为什么仅 {error} 而不是 {... error} 不起作用?

errorClr 不起作用,我将错误传递给了它n已声明

    const { error }=this.state;
    const  {errorClr}={style:{color : {error}}}; // this doesnt work the way?

<div className="col-8" {...errorClr}>Please enter valid data</div>

彩色道具没有反映。我没有进行设置状态。我们可以做这样的事情吗? {style:{color:{error}}}

1 个答案:

答案 0 :(得分:0)

不要将样式另存为字符串,而是将其另存为类似对象的

changeColorE(e){
    this.setState({
         error: {
             style: { backgroundColor : this.state.colorNew } 
         }
    },()=> console.log("-------",this.state.error))
 }

然后像使用它

<div className="col-2" {...error} onClick={this.changeColorE.bind(this)}></div>