【问题标题】:Package.json for server and client服务端和客户端的 Package.json
【发布时间】:2018-02-05 08:22:28
【问题描述】:

我想从我的服务器端 package.json 为客户端安装 package.json,因为服务器端使用节点,客户端使用 angular 2 目录结构

server-app

--bin

--node_modules

--package.json

--client-app

     --app

     --node_modules

     --package.json

现在的问题是:

我必须从 server app 文件夹server-app/client-app 文件夹分别运行这个命令 npm install 这将创建部署问题

我想要的是从即 server-app 只运行一次 npm install,它会自动安装 server-app package.json 和 client-side-应用程序 package.json 也是。 任何帮助将不胜感激

【问题讨论】:

标签: node.js angular npm npm-install node-modules


【解决方案1】:

按以下方式构建您的应用程序,

app
   --server-app        
   --client-app       
   --node_modules
   --package.json

这样你就可以拥有单个 package.json 文件

【讨论】:

  • 我知道,但是 angular2 在执行此操作时会产生问题,无法返回
  • 你有没有使用任何生成器尝试过这个结构,比如MEAN Generator
  • 是的,它的角度为 1
  • 你能把那个生成器的github链接发一下吗
  • 检查这个App structure 我之前提到的生成器。您可以看到它的根目录中有一个 package.json 文件。这是 MEAN Stack 的推荐结构。尝试使用此生成器。顺便验证一下答案,这样对遇到此类问题的其他人会有所帮助。干杯!!
【解决方案2】:

我认为您需要的是一个名为 concurrently 的 npm 模块。

并发安装在您的根文件夹中,您可以运行多个自定义 npm 脚本。 例如:您可以创建 2 个单独的脚本来安装依赖项(client-install 和 server-install),然后创建 install-all-deps 脚本,该脚本将依次运行这两个脚本并在两个目录中安装所有 deps。

{
    "scripts": {
        "client-install"  : "cd client && npm install",
        "server-install"  : "cd server && npm install",
        "install-all-deps": "concurrently \"npm run server-install\" \"npm run client-install\""
    }
}

这里是 npm 模块https://www.npmjs.com/package/concurrently。引用文档:

同时运行多个命令。像 npm run watch-js & npm run 少看但更好。

希望这会有所帮助。

【讨论】:

  • 以上脚本需要包含在服务端或客户端的package.json中?
  • 在根目录下无所谓。
猜你喜欢
  • 1970-01-01
  • 2011-09-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-02-18
相关资源
最近更新 更多