我们在生产中经常使用nodejs,它非常适合Web,因为我们对前端和后端使用相同的语言,但是当将前端和后端都放在一个源根目录中时,就会遇到问题。我应该在哪里放置构建依赖项?我应该将诸如webpack,babel之类的依赖项放入依赖项或开发依赖项中吗?我发现两种选择都不好。我希望像这样的部门不会打包到我的最终dist包中。但是我必须安装它才能在ci管道中构建静态资产。
我当前的解决方法是安装两次。我将这些依赖关系放在devdependencies中,将dep放在后端依赖关系中,第一个安装是安装所有deps来构建静态资产,然后,删除node_modules,然后再次为依赖项安装。
我也不喜欢这种解决方法,它大大增加了构建时间。
答案 0 :(得分:1)
您可以将应用程序需要运行的依赖项放入“依赖项”部分,并在“ devDependencies”中基于构建/开发的依赖项。
诀窍是运行npm install --production
,它只会安装生产依赖项,即在“ dependencies”下安装软件包。
npm install
确实安装了生产依赖性和偏差依赖性,因此无需重复或安装两次。