双package.json结构

原文链接:Two package.json Structure

  1. 用于页面开发(./package.json)

该package.json 位于项目的根目录中。 在此声明开发环境的依赖项并构建脚本 (devDependencies)。

  1. 用于应用(./app/package.json)

该package.json 位于 app 目录中。 在此处声明您的应用程序依赖项(dependencies)。 只有这个目录与最终打包的应用程序一起分发。

划分双package.json结构的原因:

  1. 需要编译原生npm模块(那些用C而不是JavaScript编写的模块),并且我们有两个不同的编译目标。 应用程序中使用的依赖需要针对electron运行时进行编译,而所有开发过程中使用的依赖都需要针对您的本地 node.js 环境进行编译。 多亏了两个package.json结构,这很简单(请参阅#39)。
  2. 无需指定要包含在应用程序中的文件(因为开发文件驻留在应用程序目录之外)。

如果您使用 two-package.json 项目结构,则您的开发 package.json 中将只包含 devDependencies,而应用程序 package.json 中将包含您的依赖项。 为确保您的依赖项始终基于这两个文件进行更新,只需将 “postinstall”: “electron-builder install-app-deps” 添加到您的开发 package.json 中。 这基本上会在您的应用程序目录中自动触发 npm 安装,因此您不必每次安装/更新依赖项时都执行此工作。