嗨,我第一次使用React Native命令npx React-Native init Projec在VS代码中创建了一个项目。 我按照需要在 android studio 的模拟器中打开的说明进行操作,但当我启动应用程序 npx react-native start 时,它无法工作。我得到了一个错误的屏幕截图。
PS C:\Users\Stefan\Desktop\Teast\Test> npx react-native start
###### ######
### #### #### ###
## ### ### ##
## #### ##
## #### ##
## ## ## ##
## ### ### ##
## ######################## ##
###### ### ### ######
### ## ## ## ## ###
### ## ### #### ### ## ###
## #### ######## #### ##
## ### ########## ### ##
## #### ######## #### ##
### ## ### #### ### ## ###
### ## ## ## ## ###
###### ### ### ######
## ######################## ##
## ### ### ##
## ## ## ##
## #### ##
## #### ##
## ### ### ##
### #### #### ###
###### ######
error listen EADDRINUSE: address already in use :::8081. Run CLI with --verbose flag for more details.
Error: listen EADDRINUSE: address already in use :::8081
at Server.setupListenHandle [as _listen2] (net.js:1316:16)
at listenInCluster (net.js:1364:12)
at Server.listen (net.js:1450:7)
at C:\Users\Stefan\Desktop\Teast\Test\node_modules\metro\src\index.js:235:20
at new Promise (<anonymous>)
at Object.<anonymous> (C:\Users\Stefan\Desktop\Teast\Test\node_modules\metro\src\index.js:234:14)
at Generator.next (<anonymous>)
at asyncGeneratorStep (C:\Users\Stefan\Desktop\Teast\Test\node_modules\metro\src\index.js:46:24)
at _next (C:\Users\Stefan\Desktop\Teast\Test\node_modules\metro\src\index.js:66:9)
PS C:\Users\Stefan\Desktop\Teast\Test>
提前致谢!
在 Windows 上:
netstat -ano | findstr :8081
taskkill /PID <HereGoesPID> /F
然后再跑地铁
npx react-native start
基本上这意味着有另一个应用程序占用了端口 8081,所以你有 2 个选择。
终止在端口 8081 上运行的所有应用程序
在不同端口上启动反应本机应用程序
npx react-native start --port 9988
我们需要从模拟器传输端口,然后才能运行它:-
步骤 1. 借助本文 t.e.我们如何在特定端口转发模拟器应用程序(https://medium.com/@hsuastegui/use-react-native-in-a- Different-port-1109db5674d8)
step.2 在终端上运行此命令: npx react-native start --port 9988(9988是你转发的端口)
对于 Windows(React Native CLI),首先找到端口,运行此命令。
netstat -ano|findstr "PID :3000"
之后,要终止端口,请运行此
taskkill /pid 18264 /f
这里的 pid 是你的 PID 地址,执行第一个命令后你会发现它。
如果打开了多个项目,只需关闭 VS Code 项目和 Xcode 项目即可。 VS CODE 中仅保留一个项目。很简单:)