常見自定義包制作流程(一)npm包

使用NPM工具進(jìn)行包管理

  • 通過NPM提供的npm命令來進(jìn)行依賴包的下載、升級和移除
  • 通過package.json來定義軟件包的元信息、開發(fā)依賴(開發(fā)或測試需要)、部署依賴(運行時需要)
  • 依賴存儲在node_modules中
  • 依賴在項目之間是隔離的,全局安裝(-g)會使它成為命令行工具而不是全局依賴

npm自定義包制作流程

  • 準(zhǔn)備

  • 創(chuàng)建自己的npm包

    • 創(chuàng)建一個空的包項目文件夾
    • 初始化npm包
      cd $package_root_path
      npm init
      
    • 創(chuàng)建出來的package.json樣子如下
      {
          "name": "your-npm-package-name",
          "version": "1.0.0",
          "description": "your npm package description",
          "main": "index.js",
          "scripts": {
              "test": "echo \"Error: no test specified\" && exit 1"
          },
          "author": "your developer name",
          "license": "MIT OR OTHER LICENSE",
          "keywords": [
              "js",
              "something key words"
          ]
      }
      
    • 創(chuàng)建一個index.js文件作為包入口文件(和package.json下的main保持一致)
    • 編寫完善index.js
  • 發(fā)布npm包

    • 添加登錄用戶,請確保當(dāng)前鏈接源是官網(wǎng),使用nrm工具可以快速查看和切換
      npm adduser
      
    • 發(fā)布上傳包
      npm publish
      
    • 如果是發(fā)布到公開組織(public organization)
      npm publish --access public
      
  • 引用和使用npm包

    • 下載安裝依賴包
      //安裝但不寫入package.json
      npm install your-package-name
      //安裝并寫入package.json的"dependencies"中
      npm install -S your-package-name
      //安裝并寫入package.json的"devDependencies"中
      npm install -D your-package-name
      //安裝指定版本
      npm install -S your-package-name@1.0.0
      //全局安裝
      npm install -g your-package-name
      
    • 調(diào)用npm包中的方法
      //默認(rèn)導(dǎo)入
      import something from 'your-package-name'
      //模塊化導(dǎo)入
      import {something} from 'your-package-name'
      
  • 更新npm包

    • 修改內(nèi)容
    • 更新版本號
      //直接修改package.json中的version
      "version": "1.1.0"
      //或者使用命令修改
      npm version 1.1.0
      
    • 再次發(fā)布
      npm publish
      //OR
      npm publish --access public
      
    • 更新使用依賴包
      //手工修改package.json中對應(yīng)包的版本號,然后執(zhí)行
      npm update your-package-name
      //直接命令行更新到指定版本
      npm update your-package-name@1.1.0 -S
      //或者更新到最新版本
      npm update your-package-name@latest -S
      
  • 撤銷發(fā)布的npm包
    如果因為某種原因需要撤銷已經(jīng)發(fā)布提交的npm包
    超過24小時后無法撤銷

    npm --force unpublish your-package-name
    
    • 注意
    1. 在24小時加上 --force強制執(zhí)行才可以實現(xiàn)。即使撤銷了發(fā)布的包,再次發(fā)布的時候也不能與之前被撤銷的包的名稱和版本其中之一相同,包名和包版本組成唯一標(biāo)識,即使撤銷也并不會消失,不能重復(fù)使用。
    2. 撤銷的包不能立馬再次發(fā)布,撤銷24小時后才能再次發(fā)布。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容