我正在使用反应原生android并且面临问题在Android设备上部署应用程序。 我跑的时候
react-native start,它不会在端口8081上启动dev sever
我尝试了几个选项:
1)https://facebook.github.io/react-native/docs/troubleshooting.html
2)试图阻止进程在端口号8081上运行,但没有成功
我的问题是,我们可以将反应本机开发服务器端口从8081(默认情况下,我们可以在ios中将其从AppDelegate.m文件中更改)更改为其他方法或任何其他方法
您的回复将受到高度赞赏。感谢
答案 0 :(得分:30)
不确定是否记录[1],您可以通过CLI参数指定端口,如下所示:
react-native start --port 9988
我在源代码中找到它,并且它在我的本地机器上工作:)
https://github.com/facebook/react-native/blob/master/local-cli/server/server.js#L30
[1]现在记录在这里:https://facebook.github.io/react-native/docs/troubleshooting#using-a-port-other-than-8081
答案 1 :(得分:9)
我知道现在已经晚了,但是,还有另外一种方法可以永久地更换你的端口。
转到your_app \ node_modules \ react-native \ local-cli \ server \ server.js并将端口8081更改为8088
将是这样的
...
module.exports = {
name: 'start',
func: server,
description: 'starts the webserver',
options: [{
command: '--port [number]',
default: 8088,
parse: (val) => Number(val),
}
...
在RN 0.57上测试更新:
1.如果您使用的是自定义城域配置
const config = {
...
server: {
port: 8088,
}
...
};
2。如果你不是那么,
转到your_app \ node_modules \ react-native \ local-cli \ util \ Config.js
const Config = {
...
server: {
port: process.env.RCT_METRO_PORT || 8088 //changed from 8081
}
...
}
答案 2 :(得分:3)
设置RCT_METRO_PORT
,例如:
export RCT_METRO_PORT=8765
答案 3 :(得分:2)
在花了一整天并经历了许多解决方案后,这些建议的组合帮助我解决了这个问题。 请按照以下步骤操作:
使用以下命令创建项目: 'react-native init [PROJECT_NAME]'
在Xcode中打开项目并将所有出现的“8081”替换为“8088”并保存更改
打开终端并将工作目录更改为上面创建的项目目录。 使用以下命令更改本机使用的端口: react-native start --port 8088
运行此命令后,您会在终端中看到以下输出:
如您所见,这将启动Metro实例。不要杀死命令或终端窗口。让这个过程运行。
答案 4 :(得分:2)
最简单的解决方案是:
react-native run-ios --port 1234
但是要求0.55以上。
答案 5 :(得分:2)
/**
* Metro configuration for React Native
* https://github.com/facebook/react-native
*
* @format
*/
module.exports = {
transformer: {
getTransformOptions: async () => ({
transform: {
experimentalImportSupport: false,
inlineRequires: false,
},
}),
},
server: {
port: 8088,
},
}
答案 6 :(得分:2)
实际上,在当前版本的React Native中,地铁捆绑器的配置位于@react-native-community/cli
中,并且要更改地铁捆绑器的默认PORT,我们只需通过export
更改环境变量即可通过项目路径中的以下命令:
export RCT_METRO_PORT=8590
然后在项目的ios
文件夹中找到Pods
文件夹,然后在Pods
文件夹中查找RCTDefines.h
文件,其中有两个,两个都在里面将8081
更改为8590
。
当然,对于测试,我们可以运行echo $RCT_METRO_PORT
,如果看到新的PORT 8590
,则现在对其进行了更改,并且可以使用yarn start
和然后是yarn ios
或yarn android
。
提示:要连接到React Native Debugger,请按⌘ + t 并将8081
端口更改为{{1 }}。
答案 7 :(得分:1)
export RCT_METRO_PORT=8082
react-native start --port $RCT_METRO_PORT
react-native run-ios
https://facebook.github.io/react-native/docs/troubleshooting#using-a-port-other-than-8081
答案 8 :(得分:1)
您需要覆盖 RCT_METRO_PORT
宏变量以确保您的应用在通过 xcode 或 react-native run-ios
运行时指向正确的端口。这可以通过在工作区中打开 Pods 项目,导航到 Build Settings 并添加预处理器宏来完成。例如 RCT_METRO_PORT=7777
,如果您使用的端口是 7777
。
答案 9 :(得分:0)
按照以下步骤操作:
第1步:
private void cboVender_ItemDataBound(object sender, System.Web.UI.WebControls.RepeaterItemEventArgs e) {
if ((e.Item.ItemType == ListItemType.Item)) {
rowIndex = e.Item.ItemIndex;
// here you have your row number, you can Access the value of that column and do whatever you want
}
}
第2步: 更改默认端口 - 任何其他端口//示例 - > 8089
第3步: 返回项目 - >然后 npm start
答案 10 :(得分:0)
您可以使用此react-native-port-patcher替换默认的8081端口和您想要的端口号。
答案 11 :(得分:0)
如果使用纱线-纱线启动--port 您的端口名 对我有用。 例如。纱线启动-端口8082
答案 12 :(得分:0)
如果要更改8081以外的端口并在模拟器中运行该端口,我认为此链接具有更好的工作解决方案: https://medium.com/@hsuastegui/use-react-native-in-a-different-port-1109db5674d8
答案 13 :(得分:0)
当您执行类似命令时
./ node_modules / react-native / scripts / launchPackager.command
要启动调试服务器,请附加args之类的
-端口8082
它在React native 0.53.3中对我有效。