有人能向我解釋這是什麼意思--save-dev的和NPM如何影響分佈又是怎樣知道你想要做什麼?npm如何知道你在開發/開發模式?
回答
第一個,看到這個問題的答案,What's the difference between dependencies, devDependencies and peerDependencies。
這將解釋噸。
第二個,默認情況下npm將安裝devDependencies,除非兩者中的一個爲真,在這種情況下devDependencies將被跳過。這些東西是:
- 你明確地告訴NPM它的生產與
npm install --production
- 您設置NPM檢查環境變量,
NODE_ENVIRONMENT=production
在一般情況下,如果你正在分發到像Heroku的,他們將設置生產標誌,並且您的devDependencies將安裝而不是。因此,只有與--save-dev
或-D
標誌(都做同樣的事情),如果它是一個用於開發的模塊,比如測試/嘲笑/支架/等安裝的東西。
--save-dev
爲相關性,如單元測試文庫是有用的。應用程序不需要這些依賴關係來運行生產;因此如果你發佈你的軟件包,你的軟件包的用戶將無法在他們的node_modules文件夾中獲得這些開發依賴項。
NPM並不一定知道,你在開發者模式,它只是一個軟件包管理器,允許你將包安裝到你的工作目錄,並從發佈自己的包說目錄。
是什麼意思爲應用程序正在生產的「運行」,如何NPM知道你在生產或開發運行? –
Matthew Bakaitis的回答很好地描述了npm如何不安裝dev依賴關係。您可以使用生產標誌「--production」進行安裝,或者將環境變量NODE_ENVIRONMENT設置爲「生產」 –
- 1. 如何開發NPM模塊離子
- 2. 移動網站開發 - 知道如何?
- 3. 在開發模式
- 4. 你知道任何SQLite可視化開發工具嗎?
- 5. NPM + React + Webpack:切換開發/產品模式如何工作?
- 6. 如何知道模擬器開發中的指令集?
- 7. iOS 9節電模式 - 開發者需要知道什麼?
- 8. 在Prestashop開始模塊開發之前,我想知道主要的知識點?
- 9. WPF開發模式
- 10. GWT開發模式
- 11. Android開發模式
- 12. Visual Studio npm scoped模塊開發?
- 13. npm模塊開發依賴關係
- 14. 在javascript中開發模式
- 15. 始終在開發模式
- 16. 不要在開發模式
- 17. 如何在開發層中開發道路3
- 18. 你如何在艾菲爾開發webapps?
- 19. Odoo 10開發者模式和開發者模式與資產
- 20. 你如何爲Facebook開發? (多個開發人員)
- 21. 使用git開發「多渠道」開發
- 22. 如何讓WordPress退出開發模式?
- 23. 你如何運行你不知道參數開始的程序?
- 24. 發佈NPM包的開發版
- 25. 如何讓Atom.io知道我正在開發服務器?
- 26. 如何開發Web模塊
- 27. Xbox不會離開開發模式
- 28. 你如何保持開發/臺/生產
- 29. 你如何處理開發中的SSL?
- 30. 你如何開發的OpenGL代碼
npm還會檢查「NODE_ENV」環境變量 – gargsms