У меня есть экземпляр axios, чтобы установить baseURL
и установить interceptors
, но каждый раз, когда я хочу использовать this.props.navigation
, я получаю сообщение об ошибке undefined is not an object (this.props.navigation)
вот код:
// Axios Setting
api.axiosInstance.interceptors.response.use((response)=>{
return response
}, (error) => {
if(error.response == undefined){
return Promise.reject(
Alert.alert("Perhatian","Tidak dapat terhubung ke server \n\n Cek koneksi internet anda",[
{text:"OK", onPress:()=>BackHandler.exitApp()}
])
)
} else if (error.response.status === 401) {
return Promise.reject(
goToLogin("Login", null)
);
}
})
//goToLogin Function on different js :
export function goToLogin(routeName, params){
return(
Alert.alert("Peringatan", "Sepertinya akun ini sudah login di perangkat lain\n\nsilahkan logout dan login kembali untuk dapat mengakses kembali",[
{text:'Logout', onPress:()=>{
console.log(this.props) // i got undefined on this line
// this.props.navigation.dispatch(
// NavigationActions.navigate({
// routeName:routeName,
// key:routeName,
// params:params
// })
// ),
// deleteAllUser()
}}
],{cancelable: false})
)
}
Как получить доступ к this.props.navigation
, когда компонент (axios) не отображается на экране?