火力文档引用grecaptcha但从来没有导入或定义它

火力文档引用grecaptcha但从来没有导入或定义它

问题描述:

https://firebase.google.com/docs/auth/web/phone-auth火力文档引用grecaptcha但从来没有导入或定义它

如果signInWithPhoneNumber导致错误,重设验证码,从而 用户可以再试一次:

grecaptcha.reset(window.recaptchaWidgetId); 

// Or, if you haven't stored the widget ID: 
window.recaptchaVerifier.render().then(function(widgetId) { 
    grecaptcha.reset(widgetId); 
} 

但从未定义过grecaptcha。我必须从某处导入它吗?

是的,你需要导入它。

这并不明显,但文档确实参考了库中的“Use the reCAPTCHA widget”部分。

他们有链接到this page。我猜你会使用the reCAPTCHA V2

看起来它是由firebase自动导入的。但是,因为我是从ES2015编译代码,我需要

/* global grecaptcha */ 

添加到我的js文件的顶部,使其通过我的代码可见。

如果Firebase Auth JS库尚未包含,它将动态地拉动grecaptcha库。否则,如果您已经包含它:https://www.google.com/recaptcha/api.js,那么它只会使用该库。