最近2018中文字幕在日韩欧美国产成人片_国产日韩精品一区二区在线_在线观看成年美女黄网色视频_国产精品一区三区五区_国产精彩刺激乱对白_看黄色黄大色黄片免费_人人超碰自拍cao_国产高清av在线_亚洲精品电影av_日韩美女尤物视频网站

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
一天一夜,寫完了這份高效組織NpmScript優(yōu)秀實(shí)踐

本文轉(zhuǎn)載自微信公眾號「全棧成長之路」,作者山月行。轉(zhuǎn)載本文請聯(lián)系全棧成長之路公眾號。

成都創(chuàng)新互聯(lián)公司是一家專注于網(wǎng)站建設(shè)、成都做網(wǎng)站與策劃設(shè)計(jì),沐川網(wǎng)站建設(shè)哪家好?成都創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)10余年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:沐川等地區(qū)。沐川做網(wǎng)站價(jià)格咨詢:18982081108

用了兩天,終于把這篇文章趕完了。有興趣的可以加我微信好友 shanyue94 進(jìn)行交流。這篇文章也可以在山月的博客上找到,正文開始

眾所周知,一個(gè) Javasript 項(xiàng)目的腳本類工具,可以使用 package.json 中的 scripts 字段來組織,簡單來說,這就是 npm script。

最典型最常用約定俗成的一個(gè)是 npm start,用以啟動項(xiàng)目:

 
 
 
 
  1.   "scripts": { 
  2.     "start": "next" 
  3.   } 

約定速成的還有很多,如下所列

  • npm install
  • npm test
  • npm publish
  • ...

約定速成的親兒子腳本自然和其它第三方腳本不一樣,如果需要執(zhí)行它,直接使用 npm 前綴即可,如 npm start,那其它腳本呢?那就需要 npm run 前綴了。而 yarn 就沒這么多講究了,一視同仁。

 
 
 
 
  1. $ npm run  
  2. $ npm run-script dev 
  3.  
  4. # 為了簡單方便,等同于 
  5. $ npm run dev 
  6.  
  7. # yarn 
  8. $ yarn dev 

以上是眾所周知的,以下講一講有可能不是眾所周知的

運(yùn)行: npm run dev 與 npm start 的區(qū)別

對于一個(gè)「純生成靜態(tài)頁面打包」的前端項(xiàng)目而言,它們是沒有多少區(qū)別的:生產(chǎn)環(huán)境的部署只依賴于構(gòu)建生成的資源,更不依賴 npm scripts??梢?如何部署前端項(xiàng)目[1]。

使用 create-react-app 生成的項(xiàng)目,它的 npm script 中只有 npm start

 
 
 
 
  1.   "start": "react-scripts start", 
  2.   "build": "react-scripts build", 
  3.   "test": "react-scripts test", 
  4.   "eject": "react-scripts eject" 

使用 vuepress 生成的項(xiàng)目,它的 npm script 中只有 npm run dev

 
 
 
 
  1.   "dev": "vuepress dev", 
  2.   "build": "vuepress build" 

在一個(gè)「面向服務(wù)端」的項(xiàng)目中,如 next、nuxt 與 nest。dev 與 start 的區(qū)別趨于明顯,一個(gè)為生產(chǎn)環(huán)境,一個(gè)為開發(fā)環(huán)境

dev: 在開發(fā)環(huán)境啟動項(xiàng)目,一般帶有 watch 選項(xiàng),監(jiān)聽文件變化而重啟服務(wù),此時(shí)會耗費(fèi)大量的 CPU 性能,不宜放在生產(chǎn)環(huán)境

start: 在生產(chǎn)環(huán)境啟動項(xiàng)目

在 nest 項(xiàng)目中進(jìn)行配置

 
 
 
 
  1.   "start": "nest start", 
  2.   "dev": "nest start --watch" 

運(yùn)行:Script Hooks -> 如何把新項(xiàng)目快速跑起來

新人入職新上手項(xiàng)目,如何把它跑起來,這是所有人都會碰到的問題:所有人都是從新手開始的。

有可能你會脫口而出:npm run dev/npm start,但實(shí)際工作中,處處藏坑,往往沒這么簡單。

  1. 查看是否有 CI/CD,如果有跟著 CI/CD 部署的腳本跑命令
  2. 查看是否有 dockerfile,如果有跟著 dockerfile 跑命令
  3. 查看 npm scripts 中是否有 dev/start,嘗試 npm run dev/npm start
  4. 查看是否有文檔,如果有跟著文檔走。為啥要把文檔放到最后一個(gè)?原因你懂的

但即便是十分謹(jǐn)慎,也有可能遇到以下幾個(gè)叫苦不迭、浪費(fèi)了一下午時(shí)間的坑:

  1. 前端有可能在「本地環(huán)境啟動時(shí)需要依賴前端構(gòu)建時(shí)所產(chǎn)生的文件」,所以有時(shí)需要「先正常部署一遍,再試著按照本地環(huán)境啟動 (即需要先 npm run build 一下,再 npm run dev/npm start)」。(比如,一次我們的項(xiàng)目 npm run dev 時(shí)需要 webpack DllPlugin 構(gòu)建后的東西)
  2. 別忘了設(shè)置環(huán)境變量或者配置文件

因此,設(shè)置一個(gè)少的 script,可以很好地避免后人踩坑,更重要的是,可以避免后人罵你

 
 
 
 
  1.   "scripts": { 
  2.     "start": "npm run dev", 
  3.     "config": "node assets && node config", 
  4.     "build": "webpack", 
  5.     // 設(shè)置一個(gè) dev 的鉤子,在 npm run dev 前執(zhí)行,此處有可能不是必須的 
  6.     "predev": "npm run build", 
  7.     "dev": "webpack-dev-server --inline --progress" 
  8.   } 

Hooks

在 npm script 中,對于每一個(gè)命令都有 Pre/Post 鉤子,分別在命令執(zhí)行前后執(zhí)行

 
 
 
 
  1. npm run 
    <samp id="a0kce"><tbody id="a0kce"></tbody></samp>
    <strike id="a0kce"></strike>
      <li id="a0kce"><pre id="a0kce"></pre></li>
    • <samp id="a0kce"><tbody id="a0kce"></tbody></samp>
      <blockquote id="a0kce"><tfoot id="a0kce"></tfoot></blockquote>
      <samp id="a0kce"><tbody id="a0kce"></tbody></samp>
      <strike id="a0kce"><s id="a0kce"></s></strike>