<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                ## 一、概述 npm(cnpm)是隨同NodeJS一起安裝的包管理工具,能解決NodeJS代碼部署上的很多問題,常見的使用場景有以下幾種。 1. 允許用戶從NPM服務器下載別人編寫的第三方包到本地使用。 2. 允許用戶從NPM服務器下載并安裝別人編寫的命令行程序到本地使用。 3. 允許用戶將自己編寫的包或命令行程序上傳到NPM服務器供別人使用。 >[danger] bower及yarn都是與npm類似的包管理工具,不過npm用得更多; ## 二、npm install 命令 npm 安裝 Node.js 模塊語法: npm install =npm i,在git clone項目的時候,項目文件中并沒node_modules文件夾,項目的依賴文件可能很大。直接執行,npm會根據package.json配置文件中的依賴配置下載安裝。注意,要在項目的根目錄下。 **后綴:** -global = -g,全局安裝,安裝后的包位于系統預設目錄下; --save= -S,安裝的包將寫入package.json里面的dependencies,dependencies:生產環境需要依賴的庫; --save-dev= -D,安裝的包將寫入packege.json里面的devDependencies,devdependencies:只有開發環境下需要依賴的; ``` $ npm install <Module Name> ``` 如:使用 npm 命令安裝常用的 Node.js web框架模塊?express: ``` $ npm install express ``` 安裝好之后,express 包就放在了工程目錄下的node_modules目錄中,因此在代碼中只需要通過 require('express') 的方式就好,無需指定第三方包路徑; 實例如下: ![](https://img.kancloud.cn/ed/24/ed24441908093f84884b48c32b8bacb0_544x118.png) ## 三、npm update 命令 與npm install差異是一個是新安裝,一個是更新,用法是一樣的; 更新全局包: ``` npm update <name> -g ``` 更新生產環境依賴包,將更新信息記錄到 package.json 文件中: ``` npm update <name> --save ``` 更新開發環境依賴包,將更新信息記錄到 package.json 文件中: ``` npm update <name> --save-dev ``` ## 四、npm run ***命令 npm run ***其實執行了package.json中的script腳本;***可以理解為鍵值對的 key,實際上 run 的是在 package.json 里面 scripts 配置的 value; ## 五、npm安裝包的類型 npm的包安裝分為本地安裝(local)、全局安裝(global)兩種,從敲的命令行來看,差別只是有沒有-g而已; **本地安裝**: 安裝在當前目錄下的,也就是說,只有在當前目錄下才可以使用安裝的本地包,安裝模塊到項目node_modules目錄下。; **全局安裝**: 全局安裝的包直接安裝到計算機中,只需安裝一次,以后在計算機的任何位置都可以使用這個包,不會在項目node_modules目錄中保存模塊包; ``` npm install moduleName # 安裝模塊到項目node_modules目錄下 npm install -g moduleName # -g 將模塊安裝到全局,具體安裝到磁盤哪個位置,要看 npm config prefix 的位置。 npm install -save moduleName # -save 將模塊安裝到項目node_modules目錄下,并在package文件的dependencies節點寫入依賴。 npm install -save-dev moduleName # -save-dev 將模塊安裝到項目(當其他人下載工程后,可以通過npm install下載到該依賴包)node_modules目錄下,并在package文件的devDependencies節點寫入依賴(當其他人下載工程后,可以通過npm install下載到該依賴包)。` ``` ## 六、package-lock.json NPM v5 引入了 `package-lock.json`, 將其作為捕獲在任意時刻安裝的確切依賴樹的機制。這會有助于在不同環境中進行協作,在這種環境中,你希望每個人都為項目的特定版本獲取依賴項以得到同一棵依賴樹。 `package.json` 使用定義所需的依賴項及其各自的版本。但是語義版本控制可能很棘手。而`package-lock.json` 將描述當前安裝的確切依賴樹。 package.json文件記錄你項目中所需要的所有模塊。當你執行npm install的時候,node會先從package.json文件中讀取所有dependencies信息,然后根據dependencies中的信息與node\_modules中的模塊進行對比,沒有的直接下載,已有的檢查更新(最新版本的nodejs不會更新,因為有package-lock.json文件,下面再說)。另外,package.json文件只記錄你通過npm install方式安裝的模塊信息,而這些模塊所依賴的其他子模塊的信息不會記錄。 package-lock.json文件鎖定所有模塊的版本號,包括主模塊和所有依賴子模塊。當你執行npm install的時候,node從package.json文件讀取模塊名稱,從package-lock.json文件中獲取版本號,然后進行下載或者更新。因此,正因為有了package-lock.json文件鎖定版本號,所以當你執行npm install的時候,node不會自動更新package.json文件中的模塊,必須用npm install packagename(自動更新小版本號)或者npm install packagename@x.x.x(指定版本號)來進行安裝才會更新,package-lock.json文件中的版本號也會隨著更新。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看