错误:应用程序退出后读取ECONNRESET

时间:2019-01-04 05:01:06

标签: react-native expo

这个问题专门针对React Native Expo。

我得到:

[09:50:39] events.js:167
[09:50:39]       throw er; // Unhandled 'error' event
[09:50:39]       ^
[09:50:39]
[09:50:39] Error: read ECONNRESET
[09:50:39]     at TCP.onStreamRead (internal/stream_base_commons.js:139:27)
[09:50:39] Emitted 'error' event at:
[09:50:39]     at emitErrorNT (internal/streams/destroy.js:82:8)
[09:50:39]     at emitErrorAndCloseNT (internal/streams/destroy.js:50:3)
[09:50:39]     at process.internalTickCallback (internal/process/next_tick.js:72:19)

服务器崩溃。使用“后退”按钮退出应用后不久,就会发生这种情况。最初,我认为这与播放的音频流有关,但是后来我编写了一个简单的Hello World应用程序,使用后退按钮退出后产生了相同的结果。

这是正常现象,还是ESET防火墙的副作用?

1 个答案:

答案 0 :(得分:0)

绝对不是通常的行为,并且不确定是否与ESET防火墙有关,而是一个非常常见的错误。关于this expo-cli's github issue和可能的修复方法的讨论很多。

确切原因尚未查明,但有人建议这似乎发生在Node v10上,因此,如果您有一个节点版本管理器(using n)并在使用react native expo时切换到v8,则可能消除您的错误。

$ npm install -g n
$ n 8.16

// verify node version
$ node -v

(不要输入$,这是在终端上,我在macOS上)

很多人似乎都遇到了此错误,但不一定像我一样在应用关闭时。对于我来说,在美好的一天,expo服务器可能每5-10分钟崩溃1-5次,或者在糟糕的一天崩溃。超级烦人。

现在,当我使用react native expo时,我只是切换到节点v8.16,它非常坚固。