1. 程式人生 > 其它 >uni-app 專案使用 npm 包中的小程式自定義元件

uni-app 專案使用 npm 包中的小程式自定義元件

原理

1. postinstall 時將 `node_modules` 下的小程式元件包複製到 `wxcomponents` 目錄下

2. 第三方包建議只用 `package.json` 管理,所以將程式碼加入 .gitignore 中

核心程式碼

// scripts/pkg-copy.js
//
本指令碼用於將原生 npm 元件複製到 wxcomponents 資料夾 const fs = require('fs-extra') const path = require('path') // 需要複製的包 const pkgList = [ { from: 'some-mp-component/miniprogram_dist', to:
'my-mp-component' } ] const npmPath = path.join(__dirname, '../node_modules') const distPath = path.join(__dirname, '../src/wxcomponents') function copyPkg (pkg) { const from = `${npmPath}/${pkg.from}` const to = `${distPath}/${pkg.to}` fs.copySync(from, to) }

然後在 package.json 配置 postinstall 命令。這樣在 npm install 之後就會自動複製該包到 `wxcomponents`

  "scripts": {
    "postinstall": "node scripts/pkg-copy"
  },

配置 .gitignore

src/wxcomponents/my-mp-component

總結

簡單的使用第三方 npm 包配置就完成了,注意此種方法只適用於第三方包的自定義元件的 json 檔案中沒有其他依賴的情況下。

如果需要處理有其他依賴的小程式自定義元件,需要考慮依賴解析的方案。

筆者也在研究這塊,可以繼續關注本部落格哦~


關注公號回覆【副業】獲取技術人副業祕籍~