Reactjs,带状态数据的内联样式

时间:2016-12-12 00:57:51

标签: css reactjs react-jsx inline-styles

我已将一组单词映射到按钮组。在州,我有一个索引和一个颜色值

this.state = {
            selectedWordIndex:'',  //e.g. 3
            selectedWordColor:''  //e.g. rgb(137,197,8)
        }

索引和颜色在另一个函数中设置。

var counter = -1;
return this.state.sentenceArray.map((word) => {
        counter += 1
        return (
            <button
                key={counter}
                type="button"
                className="btn btn-default"
                style={{}}>{word}</button>);});

如何更改索引按钮的颜色?

1 个答案:

答案 0 :(得分:1)

因此,如果您想使用索引=== this.state更改按钮的颜色。 selectedWordIndex,以下代码应该可以工作。

var counter = -1;
return this.state.sentenceArray.map((word) => {
        counter += 1
        return (
            <button
                key={counter}
                type="button"
                className="btn btn-default"
                style={ this.state.selectedWordIndex === counter ? 
                        { color:this.state.selectedWordColor } : 
                        {}
                      }
            >{word}</button>);});