npm
npm是Node.js的軟件包管理器,其目標是自動化的依賴性和軟件包管理。
這意味着,可以在package.json文件中為項目指定所有依賴項(軟件包),當需要為其安裝依賴項時,只要運行npm install就可以。
npx
npx是執行Node軟件包的工具,它從 npm5.2版本開始,就與npm捆綁在一起。
npx的作用:
- 1.默認情況下,首先檢查路徑中是否存在要執行的包(即在項目中);
- 2.如果存在,它將執行;
- 3.若不存在,意味着尚未安裝該軟件包,npx將安裝其最新版本,然后執行它;
上文已說明,此行為是npx的默認行為之一,但它具有可用來阻止的標志。
例如,如果運行npx some-package --no-install,意味着告訴npx ,它應該僅執行。some-package,如果之前未安裝,則不安裝。
示例:假設有一個名為my-package的軟件包,想要執行它。若沒有npx,要執行一個軟件包,必須通過其本地路徑運行來完成,如下所示:
./node_modules/.bin/my-package
或在 package.json文件的 scripts 中將其定義為單獨的腳本,如下所示:
{ "name":"XXX", "version": "1.0.0", "scripts": { "my-package":"./node_modules/.bin/my-package" } }
然后使用npm run my-package運行。
現在,運用npx,只需運行npx my-package.,即可輕松實現此目的。