在其他机器上运行反应代码

时间:2017-02-07 06:37:29

标签: reactjs npm cors localhost

您好我正在研究reactJS 想了解如何在其他机器上通过我的IP地址运行在http://localhost:8888/index.html#/?_k=pu9k2u上运行的本地React应用程序?

每当我执行“npm start”时,它总是运行在localhost:8888

如何将其更改为在0.0.0.0:8888上运行?

我知道如何更改应用的端口,

以下是我的webpack.congif.js

module.exports = {
  entry: './index.js',

  output: {
    filename: 'index.js',
    path: ''
  },

  devServer: {
    inline:true,
    port: 8888
  },

  module: {
    loaders: [
      { test: /\.js$/, exclude: /node_modules/, loader: 'babel-loader?presets[]=es2015&presets[]=react' }
    ]
  }
}

由于我是新手,反应JS请解释下面给出的解决方案或提供更新的webpack.config.js

How to make the webpack dev server run on port 80 and on 0.0.0.0 to make it publicly accessible?

3 个答案:

答案 0 :(得分:2)

只能将host:添加到webpack.config.js,它对我有用

devServer: {
  host:'000.000.00.00',
  port: 8888
},
然后我开始通过给予反应代码 webpack-dev-server --host 000.000.00.00 --port 888

答案 1 :(得分:0)

您需要将响应应用程序的托管从localhost更改为您的本地IP地址。 (例如10.10.54.124),您可以在Windows命令提示符下使用ipconfig命令获取它。

接下来,您需要通过防火墙打开端口(例如214),以便从第三方计算机进行访问。之后,所有人,本地或VPN网络中的人都可以通过链接10.10.54.124:214访问您的应用程序。

P.S。这只适用于人们在本地网络中的情况

答案 2 :(得分:0)

这就是我的工作:我告诉节点使用计算机的本地主机名,而不是使用IP地址。这是在脚本部分的package.json文件中使用 HOST 参数完成的,也有一个 PORT 参数:

  {
  ...,
  "scripts": {
    "start": "node scripts/start.js",
    "start-local": "HOST='BlueLight.local' node scripts/start.js",
    "build": "node scripts/build.js",
    "test": "node scripts/test.js --env=jsdom",
    ....
  }
  ...

我的主机名是BlueLight,所以我的本地地址是BlueLight.local,打开终端并输入hostname命令来查找您的主机名。

因此,本地网络中的任何计算机都可以打开http://BlueLight.local:3000,您甚至可以使用手机,甚至可以使用iPhone或Android模拟器。

请记住,由于您的本地地址没有SSL证书,因此某些安全检查(例如WebRTC,实时摄像头和其他https检查)将不起作用。其中一些可以在浏览器的高级设置中停用。