Def*_*mer 12 javascript commonjs package.json electron
根据官方网站,保存电子文件的正确方法是:
npm install electron --save-dev
Run Code Online (Sandbox Code Playgroud)
实际上,运行该应用程序需要使用Electron(实际上是:)require(),这与此处票数最高的答案背道而驰。那么,即使是一个例外,为什么还要例外呢?
require包的事实与应将其视为依赖项还是devDependency(在npm意义上)无关。例如,许多项目使用webpack API(即const webpack = require('webpack')),但将其列为devDependency。
您链接到的帖子中也说明了原因:当publish您打包时,如果消费者项目需要其他程序包来使用您的程序包,则这些程序包必须列为dependencies。
如果您的软件包仅将某些模块用于构建,测试或捆绑到dist文件中(即,消费者项目将使用的模块),则这些模块不应在中提及dependencies。我们仍将它们列出来devDependencies进行开发。
现在,在电子应用程序的情况下,您几乎没有机会将您的应用程序用作消费者项目的节点模块,因此上述约定实际上并不相关。
此外,我们将electron包打包为已构建输出的一部分。您的用户无需electron使用npm就可以使用您构建的应用程序。因此,它与devDependency的定义非常匹配。
话虽如此,IIRC的一些电子包装商将您捆绑dependencies到了内置的应用程序中,因此在填写此列表时仍需要一些严格的规定。
| 归档时间: |
|
| 查看次数: |
2586 次 |
| 最近记录: |