如何打开两个单独的nw.js应用程序

问题描述

我正在构建服务器和客户端nwjs应用程序,但无法同时打开两者。我想知道是否有任何方法可以做到这一点。我在两个打开的VS代码上都运行npm run dev,但是当我在第二个应用程序上运行此命令时,它根本不会打开(与第二个应用程序无关)。我尝试构建客户端应用程序并运行它,然后在运行服务器应用程序后,但是相同,第二个应用程序将无法启动。

这是我在两个应用程序中的package.json文件,我不知道这是否有帮助。应用程序中只有名称不同(nwjs_client和nwjs_server)

{
  "name": "nwjs_server","version": "1.0.0","description": "","main": "index.js","scripts": {
    "dev": "nw src/","prod": "nwbuild --platforms win32,win64,osx64,linux32,linux64 --buildDir dist/ src/"
  },"keywords": [],"author": "","license": "ISC","dependencies": {
    "nw": "^0.49.1"
  }
}

我愿意接受任何答案,我不知道是否有可能运行两个不同的nwjs应用程序。

解决方法

我对你想做什么感到困惑。

  • 如果您尝试运行 NW.js,而不是直接从 index.html 加载,而是从本地网络服务器加载显示页面:
    1. 创建一个 server.js 以在特定端口(例如 4263 或不常见的端口)上启动本地网络服务器。
    2. 如果您为此需要任何 node_modules(例如 express),请确保它是 dependency 而不是 devDependency
    3. 使用与服务器相同的端口将 "main" 中的 package.json 设置为 "http://localhost:4263
    4. 将您的 "node-main" 设置为 "server.js",这将在启动应用程序时显示窗口之前在节点上下文中运行。
    5. 也使用相同的端口将您的 "node-remote" 设置为 "http://localhost:4263"。这将允许 Node 命令在 NW.js 中加载时在该 URL 上运行。
  • 如果您想同时运行两个命令,您可以:
    1. npm install --save-dev concurrently wait-on。这将安装两个 devDeps
    2. 将您的 npm 脚本设置为 "start": "concurrently \"npm run serve\" \"wait-on http://localhost:4263 && nw .\""
    3. 这将运行您的 npm run serve 命令,这可能会启动本地网络服务器进行开发,如果使用 webpack 之类的东西,这可能需要一分钟。然后它等待直到 localhost:4263 实际返回响应。然后启动 NW.js

concurrently 还可以让您同时运行任意两个(或多个)命令。

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...