npm在执行next之前等待port / command(并发)

时间:2017-10-24 04:48:49

标签: node.js npm electron

所以在我的npm包中,我目前有这个脚本:

"start": "concurrently --kill-others \"npm run dev\" \"electron .\""

问题是,由于当电子运行其命令时服务器还没有启动,它显示为空白。这可以通过在服务器启动后重新加载应用程序来解决。

所以我想知道是否有办法等待服务器启动,检测端口或其他方法,以便我不必自己重新加载。

这里是我如何设置网址(尝试将Vue实现到网址中)。

let format = live ?
    url.format({
        pathname: path.join(__dirname, 'dist/index.html'),
        protocol: 'file:',
        slashes: true
    })
    :
    'http://localhost:8080'
// Specify entry point to default entry point of vue.js
win.loadURL(format);

1 个答案:

答案 0 :(得分:0)

这里的关键是立即启动您的dev服务器,然后实现自动重新加载或热模块替换。

你看过electron-webpack了吗?然后您的启动脚本将如下所示:

    "dev": "electron-webpack dev"

你的main.js:

  const url = process.env.NODE_ENV !== 'production'
    ? `http://localhost:${process.env.ELECTRON_WEBPACK_WDS_PORT}`
    : `file://${__dirname}/index.html`

  window.loadURL(url)

我建议您查看electron-webpack-quick-start以获取实施示例。