当前位置: 首页 > 知识库问答 >
问题:

React本机未处理的promise拒绝网络错误

金瑞
2023-03-14

我在react native中的这个简单api调用有问题,我不知道为什么。我在reactJs上做了完全相同的事情,它在浏览器上运行得非常好。

常量FlatListGames=({导航})=

 const [games,setGames] = useState([]);


 useEffect(() => {
    function fetchAPI(){
      axios.get('http://127.0.0.1:5000')
        .then(response => {
            setGames(response.data)
        })
        .then(error => console.log(error));
    }
    fetchAPI();
 }, [])

 console.log(games);

[未处理的promise拒绝:错误:网络错误]

  • node\u modules/axios/lib/core/enhanceError。js:24:11错误。toJSON
  • node_modules/axios/lib/adapters/xhr。js:114:23在DispatchXhrequest中
  • 节点单元模块/事件目标填充程序/距离/事件目标填充程序。事件目标中的js:818:20。原型调度事件
  • node\u modules/react native/Libraries/Network/XMLHttpRequest。setReadyState中的js:575:10
  • node\u modules/react native/Libraries/Network/XMLHttpRequest。js:389:6 in _udidcompleteresponse
  • node\u modules/react native/Libraries/vendor/emitter/EventEmitter。js:189:10英寸发射
  • node\u modules/react native/Libraries/BatchedBridge/MessageQueue。js:425:19 in _ucallfunction
  • node\u modules/react native/Libraries/BatchedBridge/MessageQueue。js:112:6 in _uguard$argument\u 0
  • node\u modules/react native/Libraries/BatchedBridge/MessageQueue。js:373:10英寸_uGuard
  • node\u modules/react native/Libraries/BatchedBridge/MessageQueue。调用函数ReturnFlushedQueue中的js:111:4
  • [本机代码]:在call FunctionReportnFlushedQueue中为空

共有1个答案

符国安
2023-03-14

这是因为您没有使用。catch,而不是您正在使用的。然后<代码>。然后用于成功重新发送promise时,以及。catch用于发生错误时,因此需要将第二个catch替换为catch。

const FlatListGames = ({ navigation }) => {

 const [games,setGames] = useState([]);


 useEffect(() => {
    function fetchAPI(){
      axios.get('http://127.0.0.1:5000')
        .then(response => {
            setGames(response.data)
        })
        .catch(error => console.log(error));
    }
    fetchAPI();
 }, [])

 console.log(games

 类似资料:
  • 错误: 我的前端vue应用程序正在和后端正在我正在请求axios从vue文件到后端的get请求。 这就是我的终点 这个错误的原因是什么?

  • 我得到以下错误: 这是promise代码,我看不出有什么问题,有什么想法吗? 编辑: 我添加了一个catch函数,得到了一个更好的错误: 这是索引。网间网操作系统。js代码。url很好,并为我提供了正确的json数据。我可以通过控制台日志看到这两个在中提供。但是未定义。 我仍然不确定发生了什么,为什么有问题,为什么它是未定义的。

  • 我想在Repl上为我的游戏实现一个基本的排行榜。它,所以我创建了一个节点。js后端。这是我在后端的配置: 但是每当我尝试发布时,我都会得到以下错误: (节点:344)未处理的PromisejectionWarning:TypeError:无法读取null的属性“push” (节点:344)UnhandledPromiseRejtionWarning:未处理的promise拒绝。这个错误要么是由于抛

  • 当我运行部署我的应用程序的命令时,我发现以下错误 (节点: 6292)UnhandledPromiseRejtionWarning: UnHandledPromiseRejtionWarning: UnHandledPromiseRejtionWarning: UnHandledPromiseRejtionWarning: UnHandledPromiseRejtionWarning: UnHan

  • 为了学习角度2,我正在尝试他们的教程。 我得到这样的错误: 我在SO中浏览了不同的问题和答案,但没有发现什么是“未处理的promise拒绝”。 有人能简单地解释一下它是什么,以及<code>错误:生成cmd ENOENT</code>是什么,当它出现时,我需要检查什么才能消除这个警告吗?

  • 我得到这个错误- (节点:18420)未处理的PromisejectionWarning:TypeError:无法读取未定义的属性“name” (节点:18420)未处理的PromisejectionWarning:未处理的promise拒绝。此错误源于在没有catch块的情况下抛出异步函数的内部,或者拒绝使用未处理的promise。catch()。要在未处理的promise拒绝时终止节点进程,请