ミニプログラムページ間でデータを転送する方法

hzc
リリース: 2020-07-01 09:55:11
転載
2652 人が閲覧しました

私は最近ミニ プログラム プロジェクトに取り組んでおり、ミニ プログラムのページ間で一部のデータを渡す必要があることが多いことがわかりました。私自身の理解と知識に基づいて、さまざまなデータ要件に応じていくつかの異なるデータ送信方法があると結論付けました。ここでは、簡単な紹介と概要を示します。

最初のタイプ: ページがジャンプするときに URL を渡す

wx.navigateTowx.redirectToを使用する場合、いくつかの値を渡すことができます。データ URL に入れて取得し、新しいページがonLoadになったときに初期化します。

//pageA.js // Navigate wx.navigateTo({ url: '../pageB/pageB?name=lin&gender=male', }) // Redirect wx.redirectTo({ url: '../pageB/pageB?name=lin&gender=male', }) // pageB.js ... Page({ onLoad: function(option){ console.log(option.name + 'is' + option.gender); this.setData({ option: option }); } })
ログイン後にコピー

注意すべき問題:

  1. wx.navigateToおよびwx.redirectToを使用する場合、タブへのジャンプは許可されません。含まれるページ;
  2. onLoadは 1 回だけ実行されます;

適用可能:
このメソッドは通常、少数のページ間の少量のデータ転送に適しています。たとえば、ページ B にはページ A からの 1 ~ 2 個のデータが必要です。

2 番目: グローバル変数を使用して転送する

app.js ファイルglobalDataでグローバル変数を定義します。古いページには、転送されるデータが保存されます。新しいページには転送されるデータが保存され、ページはグローバル変数を呼び出して、渡されたデータ値を取得します。

// app.js App({ // 全局变量 globalData: { name: null } }) //pageA.js ··· getApp().globalData.name = "lin"; //pageB.js ··· this.setData({ userName: getApp().globalData.name });
ログイン後にコピー

注意すべき問題:

  1. 使用する場合は、getApp()を直接使用して、保存されている情報を取得します。

適用可能:
この方法は通常、ホームページにアクセスするとすぐに取得されるユーザー情報など、同じデータを取得して使用する必要がある複数のページまたはすべてのページに適しています。

#3 番目の方法: ローカル キャッシュを使用する

ミニ プログラムでローカル キャッシュを使用する

ストレージ古いページは転送されたデータをキャッシュに保存し、新しいページはそれを取得します。 API を呼び出してキャッシュ データを取得します。

//pageA.js ··· wx.setStorageSync('sessionId', res.sessionId); //pageB.js ··· var sessionId = wx.getStorageSync('sessionId');
ログイン後にコピー
注意事項:

    ストレージが保存されるたびに、キーに対応する元のコンテンツは上書きされます。
  1. ユーザーがアプレットを積極的に削除した場合、またはストレージ容量の問題によりシステムによってクリアされた場合、ストレージ内のデータはクリアされます。
  2. 1 つのキーに保存できる最大データ長は 1MB で、すべてのデータ保存の上限は 10MB です。
適用可能:

この方法は一般に、ログイン ステータスの保持などと同様、アプレットが終了して再起動した場合でも保持する必要があるデータに適しています。

推奨チュートリアル: 「

WeChat ミニ プログラム

以上がミニプログラムページ間でデータを転送する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:jianshu.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!