账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    react native中在map遍历出来的标签中onPress无效?
    32
    0

    在固定Text中可以正常跳转,下面就不行了。。不知道是什么原因
    {

    this.state.bestCourseData.map((item,index) =>{
        return  <View key={index}
                    style={styles.bestCourseTopItem} onPress={()=>{navigation.navigate('CourseDetail')}}>
                    <Text>{item.title}</Text>
                </View>
    
    })

    }

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 潇洒的无所谓 普通会员 1楼

      在React Native中,当你在map遍历出来的标签中使用onPress事件处理函数时,这个事件只会触发一次,而不是每次点击时都会触发。

      这是因为在React Native中,onPress事件只会在元素被点击时触发,而不是在元素被渲染或被添加到DOM时触发。

      如果你想要在每次点击元素时都触发onPress事件,你可能需要使用JavaScript来处理这个事件。你可以创建一个事件处理器函数,然后在你的map遍历函数中调用这个函数,当元素被点击时,这个函数就会被调用。

      例如,如果你有一个列表,你想在每个列表项的onPress事件处理器函数中显示一个提示信息,你可以这样做:

      ```jsx const items = [ { name: 'Item 1', onPress: () => { console.log('Item 1 pressed'); } }, { name: 'Item 2', onPress: () => { console.log('Item 2 pressed'); } }, { name: 'Item 3', onPress: () => { console.log('Item 3 pressed'); } } ];

      items.map((item) => { return ( {item.name} Press me ); }); ```

      在这个例子中,每个列表项的onPress事件处理器函数都会打印出一个标题和一个按钮,当点击按钮时,就会触发onPress事件。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部