React native -无法从对象的循环中呈现

elcex8rz  于 2022-12-30  发布在  React
关注(0)|答案(1)|浏览(124)

我正在对象中运行循环,试图在对象中为每个键呈现一个项目

export const BeachDetailsModal = (beachData) => {
  const details = {
    zAccess: beachData.zAccess,
  };
  Object.values(beachData).forEach((value, index) => {
    let key = Object.keys(beachData)[index];

    if (value === "TRUE") {
      details[key] = value;
    }
  });
  const RenderedItem = () => {
    return (
      <View style={styles.item}>
        <View style={styles.icon}>
          <Text style={{ fontSize: 26 }}>X</Text>
        </View>
        <View style={styles.itemHeader}>
          <Text style={styles.headerText}>Insert Name Here</Text>
        </View>
      </View>
    );
  };
  return (
    <View style={styles.outside}>
      <View style={styles.container}>
        <ScrollView>
          <View style={styles.content}>
            
            <Text style={styles.pageHeaderText}>{beachData.name}</Text>
            {Object.entries(details).forEach((entry) => {
              const [key, value] = entry;
              console.log(key, value);
              <RenderedItem />;
            })}
          </View>
        </ScrollView>
      </View>
      
    </View>
  );
};

但是,没有呈现任何内容,循环中的console.log提供了对象中的所有项,所以问题不在于循环。
当我运行下面的代码作为测试时,该项被呈现

{beachData.zAccess === "Hike" && <RenderedItem />}

所以问题不在于组件
为什么它不能从循环中呈现?谢谢

toe95027

toe950271#

将forEach更改为如下Map:

{Object.entries(details).map((entry) => {
              const [key, value] = entry;
              console.log(key, value);
              return <RenderedItem />;
            })}

相关问题