0
Facebook認証を実行するサードパーティのライブラリがあり、コールバックハンドラに渡す必要があります。これは正常に動作しますが、コールバック関数ではオブジェクトの他のパラメータを設定することはできません。オブジェクト内の別の関数にJavaScript関数を渡すとオブジェクト変数のスコープが失われます
私はこの簡単なテストを作成しました。私のアプリで何が起こっているのかをシミュレートするために、なぜ3番目のケースがうまくいかないのかを理解する助けが必要です。
const Test = {
uid: null,
test() {
this.testAgain(this.updateUID);
},
testAgain(updater) {
updater(7);
},
updateUID(id) {
this.uid = id;
}
};
alert(Test.uid); // expect null, got null
Test.updateUID(3);
alert(Test.uid); // expect 3, got 3
Test.test();
alert(Test.uid); // expect 7, got 3 ???
3番目のケースを動作させる方法についてのご意見をお待ちしております。関数をFacebookの認証ライブラリに渡す必要があります.FBがその関数を呼び出すときには、オブジェクトのパラメータを更新できる必要があります。
これは機能しました。ありがとう。私は5分で答えることができます。 –