ホームページ > 記事 > ウェブフロントエンド > WeChat アプレットの getUserInfo コールバックの詳細な説明
この記事では主に WeChat アプレット getUserInfo コールバックの例の詳細な説明に関する関連情報を紹介します。この部分の内容を理解して習得するのに役立つことを願っています。みんな。
WeChat Mini Program-getUserInfo コールバックの例の詳細な説明
前書き:
WeChat Mini プログラムがどれほど強力であるかをここで自慢するつもりはありません。結局のところ、私はそれを書きませんでした。私がミニプログラム開発中に遭遇した奇妙なバグについて話しましょう。
getUserInfo が複数回呼び出されます:
多くの開発者は、基本的なユーザー情報を取得するために wx.getUserInfo を使用する必要があります。ユーザーが事前に認証されていない場合は、次のようなプロンプト ボックスが表示されます。
[許可] をクリックすると、ユーザー情報を取得し、その後の一連の操作を実行できます。これはすべて非常にうまくいっているように見えますが、特定の実行中に [許可を許可] をクリックした後、プログラムは期待どおりに実行されませんでした。最後に、wx.getUserInfo メソッドが他の場所でも呼び出されており、承認成功のためのコールバックの 1 つだけが実行されていることがわかりました。次のコードを想定します:
結論:
1. ユーザーが許可した場合: A B C が出力されます。
2. ユーザーは許可されていません: [許可] をクリックすると、A B C の 3 つのうちの 1 つがランダムに印刷されます。
もちろん、同時に複数の場所で wx.getUserInfo メソッドを呼び出さないことが最善です。そうしないと、この問題が発生したときに頭痛の種が発生することになります。この問題についての私の見解は、getUserInfo メソッドを複数回呼び出してもポップアップ ウィンドウのインスタンスが生成されるだけであるため、[許可] をクリックしたときにコールバックを 1 回だけ実行するのは通常ですが、そのうちの 1 つをランダムに実行するのは奇妙です。メソッド。
解決策:
1. wx.getUserInfo メソッドを同時に呼び出さないでください。同時に呼び出す必要がある状況はほとんどありません。
2. getUserInfo メソッドをカプセル化し、受信コールバック メソッドを配列に保存し、承認成功/失敗コールバックの呼び出しを通過した後に配列をクリアします。
以下はテスト環境です:
WeChat開発者ツールのバージョン: v1.01.170925
基本ライブラリのバージョン: 1.3.0
関連推奨事項:
javascript - アプレットwx.getUserInfoのencryptDataの復号化
WeChatミニプログラムの実装方法マルチレベルページに戻る
以上がWeChat アプレットの getUserInfo コールバックの詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。