ログインフォームに Google Invisible Recaptcha を追加するためにanuglar-recaptchaを使用しています
私が直面している問題は、vcRecaptchaService.execute を呼び出した直後に、印刷すると出力としてrecaptcha_reponse
表示されることです。undefined
しかしrecaptcha_reponse
、テスト機能printRecaptchaReponse
を使用して数秒後に印刷すると、印刷されることがわかりますrecaptcha_reponse
。
ここでの問題は、ライブラリ関数vcRecaptchaService.execute()
が here を返さないこと$promise
です。実際に戻ってきたnone
これを約束する方法はありますか?
問題は何ですか:
// 1. Call this function from html first
$scope.testRecaptchaExecute = function() {
vcRecaptchaService.execute($scope.widgetId);
console.log($scope.user.recaptcha_reponse);
// undefined :-(
return();
}
// 2. Call this function from html few seconds after testRecaptchaExecute() is called
$scope.printRecaptchaReponse = function() {
console.log($scope.user.recaptcha_reponse);
//JVRk4cZ4J_RluoH2
}
私が欲しい もの:
vcRecaptchaService.execute().then(ret => { //do something here })
このコードの問題は、vcRecaptchaService.execute が約束を返さないことです。このコードは機能しません
質問のまとめ.then
メソッドの
使い方はvcRecaptchaService.execute()
?