【发布时间】:2020-05-14 09:17:51
【问题描述】:
我尽力用 React native 制作一个登录表单,但是:
-
我无法重定向到 'App',错误消息是:(TypeError: undefined is not an object (evalating 'this.props.navigation')])
try { fetch('http://93.xxx.xx.xx:5151/login', { method: 'POST', headers: { 'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8' }, body: formBody, }) .then(function(response) { if (response.ok) { this.props.navigation.navigate('App'); } else { throw new Error("Failed to fetch [error : " + response.status + "]"); Alert.alert("Error [" + response.status + "] - " + response.statusText); } }) .then(function(response) { if (response.ok) { Alert.alert(response.userToken); console.log(response); } else { Alert.alert("Error [" + response.status + "] - " + response.statusText); } }) } catch (error) { if (error) { console.error(error); } }
有人知道怎么做吗?
-
到目前为止,我只有一个解决方案:
fetch('http://93.xxx.xx.xx:5151/login', { method: 'POST', headers: { 'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8' }, body: formBody }) .then(res => { if (res.ok) { this.props.navigation.navigate('App') } else { if (res.status == 400) { Alert.alert("Error 400 : login rejected because -> " + res.message) } else { throw Error(`Request rejected with status ${res.status}`); } } }) .catch(console.error) }
但是有了这个解决方案,我不知道如何保存用户令牌......
【问题讨论】:
标签: javascript forms react-native navigation fetch