React Native 的 fetch 出现了奇怪的问题。它以前工作过,不确定我改变了什么,但它停止工作了。
login(data,success,fail){
console.log('doing fb login');
fetch(host+'/api/login?credentials='+data.credentials)
.then( (response) => {
console.log('got login response');
return response.json();
} )
.then( json => {
console.log('got login json');
if(json.result!='fail'){
success(json);
} else {
fail(json);
}
return json;
})
.catch((error) => {
console.warn(error);
});
}
问题是我看到了第一个“得到登录响应”消息,但是它只是挂起,直到我按下它触发“得到登录 json”并按预期继续的屏幕之前什么都没有发生。
这令人沮丧,因为这种情况一直在发生,我不明白为什么第二个 .then() 没有自动触发。
任何帮助深表感谢。
编辑:发现了一个类似的问题:什么可能导致反应原生的这种缓慢获取?
似乎已经在查看:https ://github.com/facebook/react-native/issues/6679
此外,只有在启用 Chrome 调试工具时才会看到这种行为......有趣