我正在构建我的第一个节点模块。模块内部有一个演示应用程序。该演示仅在开发期间有用。我们在哪里放置演示的依赖项?
首先想到的答案是将它们放入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
。
答案 0 :(得分:1)
在大多数情况下,演示应用程序将依赖于您构建的模块,aurelia-open-id-connect
。如果您的模块以外的演示应用程序还有其他任何依赖项,则它应位于optionalDependencies
下。
参考this
这些模块应安装-O
选项。例如,npm i express -O