-
npm パッケージ管理ツールを使用します。
- まず、アプレットのルートディレクトリで
npm init
初期化プロジェクトを実行し、package.json
ファイルを生成します。 - 次に、 npm: 経由で pako をインストールします
npm install pako
。 - 次に、アプレットのルート ディレクトリに
miniprogram_npm
という名前のフォルダーを作成します。 node_modules/pako
フォルダーをminiprogram_npm
フォルダーにコピーします。- pakoを使用する必要があるページまたはコンポーネントの js ファイルに pako を導入するために使用します
require()
。
const pako = require('pako');
- まず、アプレットのルートディレクトリで
-
CDN を通じて導入されました:
- ファイルを開き
project.config.json
、次の構成を追加し、導入する必要があるサードパーティ ライブラリを指定します。
{ "setting": { "urlCheck": true, "es6": true, "postcss": true, "minified": true, "newFeature": true }, "packOptions": { "ignore": [] }, "compileType": "miniprogram", "libVersion": "2.14.4", "appid": "your appid", "projectname": "your projectname", "debugOptions": { "hidedInDevtools": [] }, "cdnUrl": { "default": "https://unpkg.com/" }, "usingComponents": { } }
- pakoを使用する必要があるページまたはコンポーネントの js ファイルに pako を導入するために使用します
import
。
import pako from 'pako';
- ファイルを開き
npm パッケージ管理ツールを使用する場合でも、CDN を通じて導入する場合でも、導入されたサードパーティ ライブラリが正しく識別されて使用できるようにするために、ミニ プログラム開発ツールにビルドする必要があります。
WeChat アプレットの環境はブラウザ環境とは異なるため、アプレットで pako ライブラリが正常に実行されるようにするには、追加の適応作業が必要になる場合があることに注意してください。
例
文字列を"{\"data\":\"[31, -117, 8, 0, 0, 0, 0, 0, 0, 0, -115, -112, 57, 14, -61, 48, 12, 4, -1, -62, 90, 16, -42, 36, 69, 29, 95, 9, 92, -91, 73, -31, -46, 93, -32, -65, -121, -115, 3, 75, 70, 28, -9, -125, -63, -20, 62, -34, -12, -92, 54, 89, 69, 22, -51, 12, -28, 20, -24, 69, 77, 37, 74, -96, -123, 26, 34, 2, -83, -44, -72, -60, -76, -123, -114, 46, -128, -44, -99, 78, 35, 109, 61, 93, -44, 105, -34, 105, -5, 67, 87, 0, 92, -18, -106, 84, 115, -73, -2, 44, -23, -23, 4, -17, -74, -17, 74, -67, 46, 73, -109, 119, 103, -69, -21, -10, 3, 15, -97, -100, -70, 117, -96, -19, -14, -63, -63, 45, 124, 124, -16, -28, -50, -37, -4, 1, 4, -126, -5, 117, -51, 1, 0, 0]\",\"total\":10}"
オブジェクトに変換する
- そして、
[]
その部分をバイト配列 (バイト配列) に変換し、GZIP アルゴリズムを使用して解凍し、次の手順に従います。
- まず、次の
JSON.parse()
メソッドを使用して文字列をオブジェクトに変換します。
const jsonString = "{\"data\":\"[31, -117, 8, 0, 0, 0, 0, 0, 0, 0, -115, -112, 57, 14, -61, 48, 12, 4, -1, -62, 90, 16, -42, 36, 69, 29, 95, 9, 92, -91, 73, -31, -46, 93, -32, -65, -121, -115, 3, 75, 70, 28, -9, -125, -63, -20, 62, -34, -12, -92, 54, 89, 69, 22, -51, 12, -28, 20, -24, 69, 77, 37, 74, -96, -123, 26, 34, 2, -83, -44, -72, -60, -76, -123, -114, 46, -128, -44, -99, 78, 35, 109, 61, 93, -44, 105, -34, 105, -5, 67, 87, 0, 92, -18, -106, 84, 115, -73, -2, 44, -23, -23, 4, -17, -74, -17, 74, -67, 46, 73, -109, 119, 103, -69, -21, -10, 3, 15, -97, -100, -70, 117, -96, -19, -14, -63, -63, 45, 124, 124, -16, -28, -50, -37, -4, 1, 4, -126, -5, 117, -51, 1, 0, 0]\",\"total\":10}";
const obj = JSON.parse(jsonString);
- 次に、
obj.data
フィールドの値を配列に変換します。
const dataArray = JSON.parse(obj.data);
- 次に、
Uint8Array
オブジェクトを作成し、dataArray
その値を引数として渡し、配列を符号なし 8 ビット整数配列に変換します。
const uint8Array = new Uint8Array(dataArray);
- 最後に、GZIP 圧縮と解凍を処理する JavaScript ライブラリであるライブラリを使用して
pako
解凍が実行されます。次のメソッドを使用してオブジェクトpako.inflate()
を解凍できます。uint8Array
const inflatedArray = pako.inflate(uint8Array);
使用する前に必ずpako
プロジェクトにライブラリを含めてください。
上記の手順が完了すると、inflatedArray
解凍されたバイト配列データが含まれます。