php執行npm命令_npm系列之命令執行

當我想使用vue的腳手架來創建一個項目的時候,我應該怎么做?

執行命令 npm install -g @vue/cli 全局安裝,之后就可以在控制臺中使用vue create programName 來創建一個項目。

為什么可以直接使用vue命令?

  • 這類支持命令的依賴會在項目中指定命令中可執行文件的位置,在package.json中的bin屬性中指定。command: filePath

67c063950dd2514143f4e6ae4a95ac31.png
  • 我們執行全局安裝時,依賴會被安裝到全局的依賴目錄(可以用npm root -g查看)。
    如:

2ec36bbae8eb0acf96e8245a4a5bff69.png


npm install 時會分析每個依賴中package.json中的bin屬性,會在lib同級的bin目錄中創建一個名為command的文件軟鏈接,指向filePath.

f0278ab70301082d33defa40165e84c2.png

(不同的環境具體路徑可能不一樣,我這邊是裝了nvm,管理node的版本的)

294d5633e6cbce924e0fb7e042fc69b9.png
  • 系統將bin目錄寫入環境變量
    (mac用冒號分隔不同的路徑)

9601cd0f3dca4c3a5d87b9753a9199b4.png

因為bin在環境變量中,所以我們能在命令中中直接使用這些命令。

全局安裝可以全局使用命令,那局部安裝勒?

當我們在項目中執行npm install packageName 時,就可以在項目中安裝某一個依賴。
同樣地,如果這個依賴是的package.json中是有bin屬性的。
會在node_modules/.bin目錄中創建一個名為command的文件軟鏈。

cddec56affe1e29a898e39bb761b0446.png

那局部安裝的項目要怎么使用勒?

package.json中的script字段可以用來自定義腳本命令,使用npm run command來執行。
- 當執行npm run command時,會自動創建一個shell,再這個shell里面執行指定的腳本命令。因此,只要是shell可以運行的命令,就可以寫在npm script 中。
- npm創建的shell,會將當前目錄的nodemodules/.bin目錄交到環境變量中,執行結束后,再將環境變量恢復原樣

這就意味著,node_modules/.bin目錄中的所有命令,可以使用添加再script中進行調用。

ec28bf3669090e17f25741e8658e1c60.png
在performance項目中執行script中的命令,執行時將項目中的node_modules/.bin目錄添加到了環境變量中

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/454309.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/454309.shtml
英文地址,請注明出處:http://en.pswp.cn/news/454309.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

模擬產品展示 Flash無法展示的追蹤過程

鼠標滑過小圖時,左側前四張大圖可以,但是最后那張大圖無法展示: falsh產品展示需要通過參數傳遞,把關聯產品id的圖片get出來,如: http://192.168.8.166:90/category/prod_img.aspx?prodid101 結果&#xf…

git提交 本地分支和遠程分支斷開連接

1級標題 當 git push origin branch_name時遇到報錯如下: fatal:‘origin’ does not appear to be a git repository fatal:Could not read from remote repository 原因: 本地分支和遠程分支斷開連接 解決方法: cd 本地分支里 1、git…

編程高手箴言

本書是作者十余年編程生涯中的技術和經驗的總結。內容涵蓋了從認識CPU、Windows運行機理、 編程語言的運行機理,到代碼的規范和風格、分析方法、調試方法和內核優化,內有作者對許多問題 的認知過程和透徹的分析,以及優秀和精彩的編程經驗。…

nodejs里的module.exports和exports

引 在node.js中我們可以使用module.exports和exports導出模塊,設置導出函數、數組、變量等等 為什么可以用這兩個模塊? 或者直接問,node.js的模塊功能是怎么實現的。 這樣得益于javascript是函數性的語言,并支持閉包。 js的閉包 直…

c語言貪吃蛇最簡單代碼_C語言指針,這可能是史上最干最全的講解啦(附代碼)!!!...

點擊上方“大魚機器人”,選擇“置頂/星標公眾號”福利干貨,第一時間送達!指針對于C來說太重要。然而,想要全面理解指針,除了要對C語言有熟練的掌握外,還要有計算機硬件以及操作系統等方方面面的基本知識。所…

SpringSecurity深度解析與實踐(3)

這里寫自定義目錄標題 引言SpringSecurity之授權授權介紹java權限集成 登錄失敗三次用戶上鎖 引言 SpringSecurity深度解析與實踐(2)的網址 SpringSecurity之授權 授權介紹 Spring Security 中的授權分為兩種類型: 基于角色的授權&#…

簡單解釋什么是 依賴注入 和 控制反轉

簡單解釋什么是 依賴注入 和 控制反轉2017-07-09 關于 依賴注入 與 控制反轉 的概念有些人覺得很難理解,最近在給別人講這個概念的時候梳理了一個比較好理解的解釋,而且我認為非技術人員也應該能聽的懂,因此分享給大家,希望下次你…

python pip install指定國內源鏡像

有時候安裝一些依賴包,網不好,直接超時,或者這個包就是死都下不下來的時候,可以指定國內源鏡像。 pip install -i 國內鏡像地址 包名 清華:https://pypi.tuna.tsinghua.edu.cn/simple 阿里云:http://mirr…

機器學習之單標簽多分類及多標簽多分類

單標簽二分類算法 Logistic算法 單標簽多分類算法 Softmax算法 One-Versus-One(ovo):一對一 One-Versus-All / One-Versus-the-Rest(ova/ovr): 一對多 ovo和ovr的區別 Error Correcting Output code…

ionic3 隱藏子頁面tabs

看了幾天ionic3 問題還挺多的,今天想把所有子頁面tabs 給去掉,整了半天,發現app.Module 是可以配置的 修改 IonicModule.forRoot(MyApp) imports: [BrowserModule,// IonicModule.forRoot(MyApp),HttpModule,IonicModule.forRoot(…

cas單點登錄-jdbc認證(三)

前言 本節的內容為JDBC認證,查找數據庫進行驗證,其中包括: 密碼加密策略(無密碼,簡單加密,加鹽處理)認證策略(jdbc)一、業務需求 不同的公司,需求業務需求或者…

get clone 出現 fatal: the remote end hung up unexpectedly5 MiB | 892.00 KiB/s 報錯信息

fatal: the remote end hung up unexpectedly5 MiB | 892.00 KiB/s 解決方案 (親測有效) 解決方案如下: git clone時加上 --depth1,比如: git clone https://gitee.com/songyitian/tctm.git --depth 1depth用于指定…

mybatis foreach map_重學Mybatis(六)-------輸入映射(含面試題)

博主將會針對Java面試題寫一組文章,包括J2ee,SQL,主流Web框架,中間件等面試過程中面試官經常問的問題,歡迎大家關注。一起學習,一起成長,文章底部有面試題。入參映射關鍵字說明圖中paramenterTy…

php輸出多余的空格或者空行

1&#xff0c;文件是否有bom。可以通過腳步檢測&#xff0c;或者利用notepa打開&#xff0c;查看編碼格式。 2. <?php echo something; ?> 或許是你的php標簽外&#xff0c;有空格或者空行。一般的項目都是用框架&#xff0c;包含很多的文件&#xff0c;如果一個個文…

執行git命令時出現fatal: ‘origin‘ does not appear to be a git repository錯誤

執行git命令時出現fatal: ‘origin’ does not appear to be a git repository錯誤 在執行git pull origin master時出現&#xff1a;   fatal: ‘origin’ does not appear to be a git repository   致命提示:“origin”看起來不是一個git存儲庫   fatal: Could not r…

蔣濤作序盛贊Leo新作為“程序員職場實用百科全書”——《程序員羊皮卷》連載(1)

《程序員羊皮卷》當當購買地址&#xff1a;http://product.dangdang.com/product.aspx?product_id20691986 互動購買地址&#xff1a;http://www.china-pub.com/196049 程序員行業從外面看起來有很多絢麗的光環&#xff0c;這里有無數以程序致富的天才&#xff0c;世界首富比…

matlab ones函數_Matlab中相見恨晚的命令(持續更新)

知乎上有個“有哪些讓人相見恨晚的Matlab命令”的話題&#xff0c;很多答主提供的命令確實很實用&#xff0c;為了更方便大家的學習&#xff0c;我就知乎上的答案和我自己想到的都綜合整理成了一篇文章&#xff0c;把我覺得很實用的指令整理出來。知乎原答案鏈接dbstop if erro…

機器學習之特征工程

特征工程-概念 特征工程是一個面向十分廣的概念&#xff0c;只要是在處理數據就可以認為是在做特征工程。個人理解&#xff0c;真正意義上的特征工程還是數據降維和數據升維的過程。 而前期對數據的處理過程&#xff1a; 需要哪些數據&#xff1f;數據如何存儲&#xff1f;數…

ArcGIS AO開發高亮顯示某些要素

參考代碼1 ifeaturecursor pcur ifeatureclass.search(iqueryfilter pfilter); pfilter.whereclause strAddress; //輸入查詢條件&#xff0c;也就是你寸地址的字段名didian ifeature pfeat pcur.nextfeature();// 如果pCur多個要素&#xff0c;則可以考慮將其合并并一起高亮…

Oracle傳輸表空間介紹

傳輸表空間通過拷貝數據文件的方式&#xff0c;實現可跨平臺的數據遷移&#xff0c;效率遠超expdp/impdp, exp/imp等工具。還可以應用跨平臺&數據庫版本遷移表數據、歸檔歷史數據和實現表空間級時間點數據恢復等場景。轉載于:https://www.cnblogs.com/ilifeilong/p/7712654…