日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

说说对npm的开发模式和生产模式的理解

發布時間:2025/4/5 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 说说对npm的开发模式和生产模式的理解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2019獨角獸企業重金招聘Python工程師標準>>>

nodejs這些年的發展非???#xff0c;相信沒有哪個前端不知道的了,npm也成為了前端開發中經常用到了的一個命令。那么npm不是只用一個 "npm install xxx"命令就夠了嗎?實際上并不是這樣,發現有些團隊在使用npm的時候沒有認真去搞懂npm在團隊里面或者說是在項目里面的一些用法。

1.從認識package.json開始

  在團隊里面開發,一般會分為開發模式和生產模式(可能會有不同的叫法),有時候還有測試模式,那么這些模式其實跟npm有很大的聯系的。首先看一個簡單的例子,先從npm依賴的package.json文件開始。

{"name": "test","version": "1.0.0","description": "test","main": "app.js","scripts": {"dev": "gulp dev && node app","pro": "node app"},"keywords": ["test"],"dependencies": {"koa": "^1.2.0"},"devDependencies": {"gulp": "^3.9.1","koa": "^1.2.0"},"author": "test","license": "MIT" }

  這個很簡單的package.json寫法的例子,這里主要應用的是其中的 scripts、dependencies、devDependencies 這三個設置。

2.dependencies、devDependencies這兩個的配置

  關于這個兩個配置,大致可以理解為當執行

npm install xxx --save

  的時候,模塊會記錄在dependencies里面;   當執行

npm install xxx --save-dev

  的時候,模塊會記錄在devDependencies里面。但是有一點的是,很多人在git clone 項目之后都是直接執行" npm i" 或者 "npm install" 就可以把項目的依賴配置好了,而這兩個命令都是安裝devDependencies里面的模塊,那么還需要dependencies來做什么?
  "npm install" 模式的是開發模式,所以安裝模塊是devDependencies里面的模塊,在開發的時候確實夠用了,但是在部署到服務器的時候就不是這樣了。上面的package.json,dependencies(對應生產模式)和 devDependencies(對應開發模式),區別只是在于有沒有 gulp 這個模塊。
  現在反過來想,我們在開發的時候需要用gulp來打包我們的靜態文件,那么到了生產模式,也就是部署到了服務器,我們已經不需要gulp來打包了,因為在開發模式把文件打包好,提交代碼的時候同步就可以了,所以在部署到服務器的時候我們完全不用多安裝gulp這么一個模塊了。
  那么生產模式是怎么執行安裝呢?很簡單,

npm install --production

  就可以了。這個例子為了理解,只是用了一兩個模塊,實際項目中生產模式和開發模式肯定不止區別一個模塊這么簡單,這個時候就更能體現出兩種模式分開的必要。
  還要提過的測試模式,測試模式一般是歸于開發模式,即把測試模式需要用到的模塊放到devDependencies 里面,目前npm是還沒有獨立出來測試模式的依賴設置。

3.scripts的設置

  大部分人開始開發的時候,對于gulp的構建一般就執行

gulp

  這個命令,對于運行node的server一般運行

node app

  這樣類似的命令,但是這樣在團隊里面的開發是不規范的,特別是有些命令加上各種參數,然后比較長的時候就會麻煩了,應該是使用"npm run" 命令和結合scripts的設置。
  scripts是一個object,那么key就是對應的命令,value就是實際上執行的命令,這種命令再長也不怕了??梢钥吹缴厦娴膒ackage.json里面的scripts,里面有兩個命令一本是dev另一個是pro,分別對應開發模式和生產模式。   當團隊成員開發的時候只需要運行

npm run dev

  就可以開始開發,當部署到服務器的時候執行

npm run pro

  就可以啟動服務了。前提是要安裝好依賴模塊,就是上面說到了兩種不同的安裝方式。
  實際項目有可能不止這兩個命令,具體的命令也可能不一樣,比如有可能還有測試模式的命令,又比如只需要打包文件而不要http的服務,那么這時候開發模式和生產模式就是不同的gulp命令了。

4.關于團隊使用

  團隊中使用,最主要的是規范,像npm這樣的使用確實要規范起來,減少團隊配合的阻礙吧,只要是增加了什么模式,只需要告訴他看packaga.json里面的scripts, npm run xxx一下就可以了。當然這里在團隊使用當中,每個項目都應該有一個README.md 的文檔來進行介紹和說明,這里就不詳細介紹了。

轉載于:https://my.oschina.net/tearlight/blog/708857

總結

以上是生活随笔為你收集整理的说说对npm的开发模式和生产模式的理解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。