首页 > 解决方案 > 访问 React 对象数组中的所有属性

问题描述

我正在为《魔法门之英雄无敌III》构建一个搜索引擎,我想检查输入的单位名称是否与我建立的数据库中的单位名称匹配。我目前有一个大型 JSON 文件,其中包含一组对象,每个对象都有一个 name 属性。目前我正在处理的代码如下所示:

 return (
    <div className="main-content">
      <h2>{name}</h2>

      {name === CastleUnits[0].Name && <UnitContainer data={CastleUnits} />} 
      {name === CastleUnits[1].Name && <UnitContainer data={CastleUnits} />} 


    </div>
  );

其中 'name' 是在搜索中传递的内容,CastleUnits[0].Name 适用于第一个单元。我试图用一个 for 循环来解决这个循环,但我收到了一个错误。

标签: javascriptarraysreactjsobjectjsx

解决方案


您需要像这样过滤和映射数组:

    return (
      <div className="main-content">
        <h2>{name}</h2>    
        {CastleUnits.filter(e => e.Name = name).map(e => <UnitContainer data={e} />)}
      </div>
    );

推荐阅读