#react-native #redux #react-redux #redux-thunk #react-redux-form
#react-native #redux #react-redux #redux-thunk #react-redux-form
Вопрос:
У меня есть функция входа в систему, которая извлекает информацию о пользователе из базы данных mysql. Я хочу отправить эти данные на разные экраны, некоторые из которых отсутствуют в stack navigator. Я некоторое время занимался исследованиями и узнал, что это можно сделать с помощью redux, но я не смог найти четкого примера того, как этого добиться. Есть предложения о том, как это сделать?
Вот моя функция входа в систему:
login = () => {
if (this.state.inputFieldsStatus == true)
{
// this.setState({passwordError:" Something went wrong! "})
fetch('http://ip_Adress/login', {
method: 'POST', // *GET, POST, PUT, DELETE, etc.
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json'
},
body: JSON.stringify({
email: this.state.email,
password: this.state.password,
})
})
.then((response) => response.json())
.then((res) => {
// alert(JSON.stringify(res.message));
if (res.success === true ) {
// AsyncStorage.setItem('user', res.user);
this.props.navigation.navigate('Home',
// {
// screen: 'Messages',
// params:
// {
// message: res.message,
// otherParam: 'anything you want here'
// }
// },
{
screen: 'Profile',
params:
{
message: res.message,
otherParam: 'anything you want here'
}
}
);
} else {
this.setState({passwordError: res.message })
// alert(res.message);
}
})
.done();
}
else
{
// alert(' Please fill in all fields! ');
this.setState({passwordError:" Please fill in all fields! "})
}
}
Комментарии:
1. Я предложу вам сохранить данные в контексте.
2. Почему этот вопрос помечен как redux, я не вижу никакого кода, указывающего, что вы используете redux store?
3. попробуйте этот контекстный api
4. @ C.K Большое вам спасибо 🙂
5. Решил ли context API вашу проблему? @User10