Ну, мой почтовый запрос работает очень хорошо, однако у меня проблемы со сбором ее данных после обновления приложения.
case UPDATE_PROFILE:
return {
...state,
}
case UPDATE_PROFILE_SUCCESS:
return {
...state,
data: action.payload
}
case UPDATE_PROFILE_ERROR:
return {
...state
}
default:
return state;
это мой редуктор
export const update_profile = ({
about,
birthday,
birth_location,
residence_location,
occupation,
company_name,
gender,
marital_status,
phone
}) => {
return async dispatch => {
dispatch(
{
type: UPDATE_PROFILE
}
)
const data = {
"user": {
"about": about,
"birthday": birthday,
"birth_location": birth_location,
"residence_location": residence_location,
"occupation": occupation,
"company_name": company_name,
"gender": gender,
"marital_status": marital_status,
"cellphone": phone
}
}
try {
const token = await AsyncStorage.getItem('@token_jwt',
(error, token) => {
let url = "/update_profile"
const headers = {
"Content-Type": "application/json",
"Authorization": `Bearer ${token}`
}
const options = {
method: 'POST',
headers: headers,
data: data,
url: `${SERVER}${url}`
}
Axios(options)
.then((response) => {
updateProfileSuccess(dispatch, response)
})
.catch((err) => {
updateProfileError(err, dispatch)
});
});
} catch (e) {
console.log(e.message)
}
}
}
const updateProfileSuccess = (dispatch, response) => {
dispatch(
{
type: UPDATE_PROFILE_SUCCESS,
payload: response.data.user
}
)
console.log(response.data.user.name)
}
const updateProfileError = (err, dispatch) => {
dispatch(
{
type: UPDATE_PROFILE_ERROR
}
)
console.log(err)
// Alert.alert('err')
}
это мой actionReducer, в нем я использую свой массив, когда мне это удается.
Трудность заключается в следующем коде, я обновляю его и отправляю по почте, за исключением того, что мне всегда нужно возвращать данные, даже после перезагрузки приложения и если пользователь сделает еще одно сообщение, обновите его снова.
<Text style={{ color: '#383941', fontSize: 22, alignSelf: "center", fontFamily: 'PTSans-Bold' }}>{this.props.data.name}</Text>
Когда я отправляю, этот текст возвращает мое имя, но когда я обновляю, он возвращает пустое
I имейте в виду, что ошибка возникает из-за того, что когда я перезагружаю страницу, запрос снова отправляется со всеми пустыми полями, как это сделать. Как сделать запрос без отправки полей?