My React Native (0.61.5)
имеет 16.9.0
React в комплекте, который не является самым последним. В приложении useEffect
возвращает ошибку TypeError: distroy is not a function
:
Вот код useEffect
:
useEffect(async () => {
try {
let url = `${GLOBAL.BASE_URL}/api/events/active?group_id=${encodeURIComponent(group_id)}&_role=${role}&_grpmember_id=${grpmember_id}&_group_id=${encodeURIComponent(group_id)}&_device_id=${encodeURIComponent(device_id)}`;
let res = await fetch(url, {
method: "GET",
headers: {
'Accept': 'application/json, text/plain',
'Content-Type': 'application/json',
"x-auth-token": token.password,
"x-auth-secret": token.username,
}
});
//check secret token
let secret = res.headers.get("x-auth-secret");
let jwttoken = res.headers.get("x-auth-token");
res = await res.json();
if (secret && jwttoken && (typeof secret !== 'undefined') && (typeof jwttoken !== 'undefined') && secret !== null && jwttoken !== null) {
if(await helper.updateJwtToken(secret, jwttoken)) {
setToken({password: jwttoken, username: secret});
authVal.updateToken(token); //set state token in App.js
};
} else if (jwttoken === "route to verfi") {
navigation.navigate("Verif1", {cell: res.cell, cell_country_code: res.cell_country_code, existing_user:true});
};
//update state
var ordered_data = eventsByDate(res);
setActiveEvents(ordered_data);
} catch (err) {
console.log("Error in event refreshing data ", err);
};
})
Согласно онлайн-сообщению , проблема, скорее всего, вызвана парой async/await
в методе. Мне кажется, что более поздняя версия React
должна решить эту проблему. Какую версию реакции я должен обновить? Или есть другой способ обойти это вместо обновления версии.