Javascript JSX内联函数(以编程方式设置?)

Javascript JSX内联函数(以编程方式设置?),javascript,reactjs,jsx,Javascript,Reactjs,Jsx,我想检查一个状态的真值,并相应地设置一个类。下面的代码就是这样做的,但是 有没有一种方法可以通过编程实现这一点,可以通过for循环添加所有内联函数检查 这样做的原因是,在某些情况下,我有数百个项目,我不愿意重复和粘贴同一代码数百次 类应用程序扩展了React.Component{ 构造函数(){ 超级(); 此.state={ 第1项:错误, 第2项:正确, 项目3:错误 } } render(){ 返回( item1 item2 item 3 ); } } ReactDOM.render

我想检查一个状态的真值,并相应地设置一个类。下面的代码就是这样做的,但是

有没有一种方法可以通过编程实现这一点,可以通过for循环添加所有内联函数检查

这样做的原因是,在某些情况下,我有数百个项目,我不愿意重复和粘贴同一代码数百次

类应用程序扩展了React.Component{
构造函数(){
超级();
此.state={
第1项:错误,
第2项:正确,
项目3:错误
}
}
render(){
返回(
  • item1
  • item2
  • item 3
); } } ReactDOM.render(,document.getElementById('app'))
.active{
颜色:绿色;
}

如果有数千个这样的对象,则它们可能位于数组中,而不是对象中。但是如果需要,我们可以将对象的属性名作为数组来获取

改为使用数组(请参见注释):

类应用程序扩展了React.Component{
构造函数(){
超级();
//将项目转换为数组
此.state={
项目:[
{名称:“项目1”,标签:“项目1”,状态:false},
{名称:“项目2”,标签:“项目2”,状态:true},
{名称:“项目3”,标签:“项目3”,状态:false}
]
};
}
render(){
返回(
    {/*循环遍历项目,输出它们*/} {this.state.items.map(item=>(
  • {item.label}
  • ))}
); } } ReactDOM.render(,document.getElementById('app'))
.active{
颜色:绿色;
}


您不必将每个项声明为状态,而必须将其声明为数组
this.state={items:[item1,item2,item3]..}
代码段上的一个很好@T.J.Crowder很抱歉最后一个问题,我真的很沮丧。@MarioD:嘿,我们终于到了。:-)