一段時(shí)間沒看小程序的文檔扼倘,突然發(fā)現(xiàn)小程序現(xiàn)在支持npm包了柿冲,感覺整個(gè)人都萌萌噠
事不宜遲 貼上文檔 https://developers.weixin.qq.com/miniprogram/dev/devtools/npm.html
小程序支持npm包從版本2.2.1的基礎(chǔ)庫開始 缚够,開發(fā)的時(shí)候需要使用beta版本開發(fā)工具 城侧,下載地址:https://developers.weixin.qq.com/miniprogram/dev/devtools/beta.html
工具搞定啦啦啦啦:
需要在小程序根目錄 npm install --production >>>溫馨提示:【npm比較慢 的情況下宠叼,可以安裝下cnpm】
安裝--production 目的是減少安裝一些業(yè)務(wù)無關(guān)的包扔仓,從而減少整個(gè)小程序的大小播玖。
測試下是否可以用npm包
隨便在npm官網(wǎng)找個(gè)包來玩玩 椎工,就js-base64 吧
https://www.npmjs.com/package/js-base64
記得安裝對(duì)應(yīng)的npm包哦如: cnpm install js-base64
在index.js中引入
// pages/npm/index.js
// const Base64 = require('js-base64').Base64;
import { Base64} from 'js-base64' //比較喜歡這種寫法
console.log(Base64);
引入之后,console一直報(bào)錯(cuò)蜀踏,找不到模塊如module "pages/npm/js-base64" is not defined
這個(gè)時(shí)候要檢測是否沒有安裝npm包
還有就是要記得npm構(gòu)建维蒙,npm構(gòu)建,npm構(gòu)建
詳情面板 勾選“使用 npm 模塊”選項(xiàng):
點(diǎn)擊開發(fā)者工具中的菜單欄:工具 --> 構(gòu)建 npm
【【有個(gè)重點(diǎn)需要注意點(diǎn)】】
構(gòu)建npm 有提示 “沒有找到可以構(gòu)建的NPM包” 這個(gè)時(shí)候除了看下開發(fā)工具里 使用npm模塊 有沒有打鉤果覆,如果有颅痊,還出現(xiàn) 那就嘗試跑下如下命令 :
npm install miniprogram-sm-crypto --production
npm構(gòu)建成功,這個(gè)時(shí)候你會(huì)發(fā)現(xiàn)小程序的根目錄出現(xiàn)了 miniprogram_npm這個(gè)文件夾
引用的npm包也可以用了局待,例子如下: 【好記性不如爛筆頭斑响,此篇純屬個(gè)人筆記,記錄下免得忘記 】
有個(gè)不足之處就是開發(fā)工具上沒有比較明顯 【npm構(gòu)建 】按鈕
【 重點(diǎn)啦啦啦Gァ=⒎!!薛耻!】】】】】】
今天2019年11月26日营罢,發(fā)現(xiàn)小程序引入npm包有點(diǎn)微妙的變化 ,下面我貼下昭卓,我重新溫故然后掉坑一遍的流程圖
(1)搭建完項(xiàng)目之后,由于需要引入npm包瘟滨,所以需要實(shí)例化 所以要先執(zhí)行 npm init
我就是沒有這么做候醒,按照官網(wǎng)直接就去npm install了,所以踩了個(gè)坑如下圖所示啦T尤场5挂!0苡瘛5型痢!
(2)初始化后运翼,引入了相關(guān)的npm包后返干,要工具 ——> 構(gòu)建npm 氮素 ,又掉進(jìn)坑了 如圖所示
圖中的命令是:npm install miniprogram-sm-crypto --production
(3)按照?qǐng)D從坑爬出來了血淌,重新構(gòu)建npm之后看到了勝利的曙光矩欠,如下圖所示啦2破省!癌淮!
最近需要搞小程序插件躺坟,由于小程序插件的功能也有這部分npm引用的問題,所以步驟基本是一致的乳蓄,不同的點(diǎn)是 npm包是在plugin根目錄下
如圖所示:
最后感慨下:一晃一年過去了咪橙,上面當(dāng)初的筆記溫故了下發(fā)現(xiàn)有所不同,哈哈虚倒,不過技術(shù)在更新美侦, 難免會(huì)出現(xiàn)這樣那樣的問題,如果遇到裹刮,不急躁音榜,靜下心來,掉坑了慢慢爬出來捧弃,等爬出來的時(shí)候赠叼,你就獲得了一個(gè)寶貴的經(jīng)驗(yàn),你說呢 违霞? 就是需要遇到問題嘴办,才能有所長進(jìn),長見識(shí)長經(jīng)驗(yàn)买鸽,我去搬磚了涧郊,還有個(gè)大坑等著我去跳去填啦,拜拜