Node.js 构建模块时,我们在何处保存演示应用依赖项?
我正在构建我的第一个节点模块。模块内部有一个演示应用程序。演示仅在开发过程中有用。我们把演示的依赖项放在哪里 首先想到的答案是将它们放入Node.js 构建模块时,我们在何处保存演示应用依赖项?,node.js,node-modules,package.json,Node.js,Node Modules,Package.json,我正在构建我的第一个节点模块。模块内部有一个演示应用程序。演示仅在开发过程中有用。我们把演示的依赖项放在哪里 首先想到的答案是将它们放入devdependency,因为它们只在开发过程中有用。也就是说,我通常为构建工具保留devdependency,而不是为运行(演示)应用程序的模块保留 所以问题是,当开发一个包含自己的演示应用程序的模块时,应该将演示应用程序的依赖项放在哪里 依赖关系 devDependencies 其他地方 这是模块: 下面是我的模块中依赖关系的高级图。()中的位置基于P
devdependency
,因为它们只在开发过程中有用。也就是说,我通常为构建工具保留devdependency
,而不是为运行(演示)应用程序的模块保留
所以问题是,当开发一个包含自己的演示应用程序的模块时,应该将演示应用程序的依赖项放在哪里
- 依赖关系
devDependencies
其他地方
()
中的位置基于Pranesh的答案
demo
third-party-modules (optionalDependencies)
my-module
third-party-modules (dependencies)
当有人安装我们的模块时,我们只希望他们下拉
我的模块/第三方模块
。当有人克隆我们的回购协议时,我们希望他们也能够下拉演示/第三方模块
在大多数情况下,演示应用程序将取决于您构建的模块,在您的情况下,aurelia open id connect
。如果您对演示应用程序有模块以外的任何其他依赖项,则应将其归入可选依赖项
提及
这些模块应安装有
-O
选项。例如,npm i express-O
我很难理解演示应用程序如何依赖于模块本身。例如,下面是我的模块结构:。该模块位于src/open id connect/
内部,演示应用程序位于src/
内部。发布模块时,dist
仅包含src/open id connect
的内容:我是否以非传统方式构建演示应用程序?示例不是依赖项,而是依赖于模块。请看。这些示例取决于模块(express)OK。这对我来说很有意义,演示不是依赖项。这很清楚。不过,这个演示有自己的依赖项,我想知道的是,这些依赖项存储在哪里。它应该在optionalDependencies
中。编辑了答案,让它更清晰。它很完美。使用.npmignore
防止示例进入已发布的包中。