Перейдите к тому же экрану с различными параметрами, используя - ReactNavigation: React Native - PullRequest
0 голосов
/ 05 января 2020

Я пытался перейти на один и тот же экран с разными параметрами в приложении-родном приложении. Это экран категорий, на котором я не хочу, чтобы пользователь go возвращался назад и выбирал разные категории для просмотра товаров. Я сделал экран, где отображаются товары из категорий.

Ниже мой код:

  <View style={styles.horizontalSlider}>
         <FlatList
               horizontal
               showsHorizontalScrollIndicator={false}
               data={this.state.DataSource}
               keyExtractor={(item, index) => index.toString()} 
               extraData={this.state.selectedItem}
               renderItem= { ({item}) => (
                <TouchableOpacity onPress={(category) => navigate.push('CategoryScreen', {item})}>
                <ImageBackground style={styles.profileImgContainer} >
                <Image source={{ uri: item.images }} style={[styles.profileImg, , { borderColor: 'green', borderWidth:2 }]} />  
                </ImageBackground>
                </TouchableOpacity>
               )}
               />
            </View>

enter image description here

1 Ответ

1 голос
/ 06 января 2020

Если вы хотите перейти на тот же экран с другими параметрами и не можете go вернуться назад, используйте this.props.navigation.replace('CategoryScreen', { ...new params here... })

Если вы хотите изменить текущие параметры навигации без навигации, используйте this.props.navigation.setParams()

( опора навигации )

Но ваша проблема не в проблеме навигации. Вам не нужно несколько экранов для этого. Решите это с помощью реакции. Все, что вам нужно сделать, это сделать ваш список условно в зависимости от того, какая категория (или элемент круга?) Выбрана в данный момент. Сохраните эту информацию в состоянии и используйте ее в рендере

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...