javascript - 在 react 中使用 map 功能设置按钮的文本和颜色的问题

标签 javascript reactjs ecmascript-6

我想要带有彩色文本的数组中的按钮。 我使用 ReactJS,我的 app.js 中有这段代码:

import React, { Component } from 'react';
import './App.css';

const myArray=["orange","red","yellow","green","blue","yellow"];

class App extends Component {
     render() {
          // this work
          const buttons=myArray.map((color,i)=><button key={i} style={color={color}}> my test </button> )

          //**// but this don't work**
         // const buttons=myArray.map((color,i)=><button key={i} style={color={color}}> {color} </button> )

          // and this work                          
          const buttons2=myArray.map((color,i)=><button  key={i}>{color}</button>)

           return (
                 <div>
                     <div>{buttons}</div>
                     <div>{buttons2}</div>  
                 </div>
               );
     }
}
export default App;

Screenshot of app

当我使用 {color} 两次时,它给我一个错误。这是为什么?谁能给我解释一下?

最佳答案

你的两个版本都不应该工作。您需要定义一个 style 对象。应该是这样的

style={{color: color}}

那个

const buttons = myArray.map((color, i) => <button key={i} style={{ color: color }}> {color} </button>)

关于javascript - 在 react 中使用 map 功能设置按钮的文本和颜色的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53560437/

相关文章:

javascript - "Can only update a mounted or mounting component "componentDidMount 中的警告

javascript - React Native setState 用空对象更新数组

javascript - React.js - 计算值的最佳实践

javascript - ECMAScript 6 的 function.name 属性

javascript - TouchableHighlight 在键盘打开时不接受按下事件

javascript - 将 AngularJS 嵌入到现有的基于 jquery/bootstrap 的网站中

javascript - Google Visualization,你能根据列的值分配切片的颜色吗?

javascript - 我应该如何在 ES6 实例中保留对 'options object' 的引用?

javascript - 使用ES6 reduce或map来计算数组嵌套对象中的总和和百分比

javascript - 是否有提供时间增量功能的库?