我正在学习使用webpack并且通常会进入Javascript世界,包括npm
。
--save
时, Several answers与--save-dev
vs npm install
打交道。我的理解是,通过package.json
npm install <the package being developed or ran>
的更新)实际上非常有用
--save
用于保存在node.js中运行应用所需的包,即服务器 --save-dev
用于保存开发应用程序所需的软件包npm install <module>
只需安装软件包,但无法通过package.json
因此,在webpack上下文中,--save
是否曾被使用过?我不相信,因为创建的是一个JS包,然后包含在HTML文件中,并在浏览器中运行。从这个意义上讲,永远不需要“保存运行应用程序所需的模块”。
同样,--save-dev
很有用(再次,在webpack上下文中),它允许某人在别处开发(在这种情况下,应用程序中的两个模块(比如moment.js
)和后勤那些(比如,gulp
)应该与--save-dev
一起安装,对吗?)
最后,裸npm install <module>
也是可能的(尽管不太有用)是开发不打算在别处完成(模块仍然安装但在package.json
中没有提到这个事实)。
这是对的吗?具体来说,假设webpack上下文中缺少--save
是真的吗?
答案 0 :(得分:1)
应用程序的生产版本中使用的任何内容都应列在save
中。例如,如果您使用React,您的应用程序将在最终生产版本中使用React。你的文件被捆绑在一起并不重要,但是在编译时它很大程度上依赖于运行。
开发期间使用的任何内容都应列在devDependency下。在这个例子中,一旦WebPack完成了文件的捆绑,我们就不再关心WebPack,因为它不是最终编译文件的一部分。
- save-dev:开发过程中使用的任何内容,例如单元测试框架或捆绑包等。
- save:您的应用程序中使用的任何内容,例如Axios,React,Vue或Chart.JS等。