【问题标题】:how to write a for loop inside a return statement in react native如何在react native的return语句中编写for循环
【发布时间】:2020-10-07 21:27:37
【问题描述】:

所以我想使用 for 循环在屏幕上显示多个内容,但它似乎不起作用。我想使用 map 方法做的事情是行不通的,因为我没有数组。这是我尝试过的。

{() => {
          for (let i = 0; i < cartnumpass; i++) {
            <View style={styles.flyingcard}>
              <View style={styles.amt}>
                <TouchableOpacity>
                  <Icon name="ios-add" type="ionicon" color="#0079b1" />
                </TouchableOpacity>
                <Text style={{fontSize: RFPercentage(2.5)}}>1</Text>
                <TouchableOpacity>
                  <Icon name="ios-remove" type="ionicon" color="#ffaaaa" />
                </TouchableOpacity>
              </View>
              <View style={styles.img}>
                <Image
                  source={require('../resources/Cameras.jpg')}
                  style={styles.image}
                />
              </View>
              <View style={styles.des}>
                <Text style={styles.heading}>Fuhr Camera</Text>
                <Text style={styles.sub}>N 2,000.00 NGN</Text>
                <TouchableOpacity
                  onPress={() => modalfunc(true)}
                  style={{
                    justifyContent: 'space-between',
                    borderColor: '#555',
                    borderWidth: 1,
                    borderStyle: 'solid',
                    width: '90%',
                    alignItems: 'center',
                    flexDirection: 'row',
                    padding: '2%',
                  }}>
                  <Text style={{fontSize: RFPercentage(1.7)}}>
                    Rent Duration
                  </Text>
                  <Icon
                    name="ios-add-circle"
                    type="ionicon"
                    color="#888"
                    size={15}
                  />
                </TouchableOpacity>
              </View>
              <View style={styles.cancel}>
                <TouchableOpacity style={styles.btn}>
                  <Icon name="ios-close" type="ionicon" color="#fff" />
                </TouchableOpacity>
              </View>
            </View>;
          }
        }}

使用这段代码,屏幕上什么也没有显示,我不知道是否可以以这种形式编写循环

提前致谢

【问题讨论】:

    标签: reactjs react-native for-loop jsx


    【解决方案1】:

    你不会那样做,你会做这样的事情:

    return new Array(cartnumpass).fill().map((_, index) => {
        <View key={index} style={styles.flyingcard}>
           // ...
        </View>
    });
    

    或者您可以执行以下操作:

    const views = [];
    for (let i = 0; i < cartnumpass; i++) {
        views.push(
            <View key={i} style={styles.flyingcard}>
                // ...
            </View>
        );
    }
    return views;
    

    【讨论】:

    • 第二个正是我想要的,非常感谢你
    猜你喜欢
    • 2011-08-17
    • 2014-08-28
    • 2017-11-17
    • 1970-01-01
    • 2019-10-07
    • 2016-09-08
    • 2011-08-26
    相关资源
    最近更新 更多