Как реализовать всплывающий диалог в приложении React Native? - PullRequest
0 голосов
/ 09 июля 2020

В моем проекте React Native я перечисляю кучу сообщений, и пользователь может «лайкнуть» одну или несколько публикаций, если захочет. Я требую, чтобы пользователь ввел свой пароль в первый раз, когда ему понравилось сообщение. Я новичок, чтобы реагировать на родной язык, и я не уверен, как я представляю пользователю диалог или новую страницу, чтобы они могли ввести свой пароль, а затем исходный экран со списком сообщений, отображаемых после этого.

У меня есть сенсорный компонент, связанный с каждым сообщением, имеющим событие onPress:

<TouchableHighlight onPress={() => Util.vote(props.info)}>
.......
</TouchableHighlight>

Таким образом, он вызывает функцию vote(), в которую я помещаю пароль logi c. Могу ли я вывести JSX из такой функции? Если да, то как мне это сделать, чтобы потом он вернулся к исходному списку сообщений?

1 Ответ

0 голосов
/ 09 июля 2020

Лучший способ реализовать всплывающий диалог: response-native-modal .

ссылка на фрагмент

<TouchableHighlight onPress={() => this.setState({ showPasswordModal: true })>
.......
</TouchableHighlight>
.....
<Modal
   isVisible={this.state.showPasswordModal}
   style={....}>
   <View>
        ...layout to get password
   </View>
</Modal>

В первой строке на странице для печати мы открывают модальное окно, содержащее макет получения пароля с использованием переменной состояния.

После получения пароля и его проверки мы можем закрыть модальное окно, используя ту же переменную состояния, и продолжить работу с кодом.

см. response-native-modal библиотека.

Если вам нужна дополнительная информация, вернитесь ко мне.

...