在建立模块时,我们在哪里保存演示应用程序依赖项?

时间:2016-09-24 16:06:22

标签: node.js node-modules package.json

我正在构建我的第一个节点模块。模块内部有一个演示应用程序。该演示仅在开发期间有用。我们在哪里放置演示的依赖项?

首先想到的答案是将它们放入devDependencies,因为它们仅在开发过程中有用。话虽这么说,我通常会为构建工具保留devDependencies,而不是运行(演示)应用程序的模块。

所以问题是,在开发包含自己的演示应用程序的模块时,哪个人放置了演示应用程序的依赖项?

  • dependencies
  • devDependencies
  • someWhereElse

这是模块:https://github.com/shaunluttin/aurelia-open-id-connect

这是我模块中依赖项的高级图表。 ()中的位置基于Pranesh的答案。

demo
  third-party-modules (optionalDependencies)
  my-module
    third-party-modules (dependencies)

当有人安装我们的模块时,我们希望他们只需要下载my-module/third-party-modules。当有人克隆我们的回购时,我们希望他们能够同时下拉demo/third-party-modules

1 个答案:

答案 0 :(得分:1)

在大多数情况下,演示应用程序将依赖于您构建的模块,aurelia-open-id-connect。如果您的模块以外的演示应用程序还有其他任何依赖项,则它应位于optionalDependencies下。

参考this

这些模块应安装-O选项。例如,npm i express -O