我正在做一个注册广告的表格,但是当我安装Recaptcha时,它不起作用好,我无法重置它或重新加载它,依此类推,我已经按照教程中的内容进行操作了,这是页面,即enter link description here
<ngx-recaptcha2 #captchaElem
[siteKey]="siteKey"
(reset)="handleReset()"
(expire)="handleExpire()"
(load)="handleLoad()"
(success)="handleSuccess($event)"
[useGlobalDomain]="false"
[size]="size"
[hl]="lang"
[theme]="theme"
[type]="type"
formControlName="recaptcha">
</ngx-recaptcha2>
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { RouterModule } from '@angular/router';
import { HttpClientModule } from '@angular/common/http';
import { FormsModule,ReactiveFormsModule } from "@angular/forms";
import { NgxCaptchaModule } from 'ngx-captcha';
@NgModule({
declarations: [
CreateadsComponent
],
imports: [
NgxCaptchaModule,
......
this.aFormGroup = this.formBuilder.group({
recaptcha: ['', Validators.required]
});
它抛出此错误:
../ node_modules / ngx-captcha / lib / components / base-recaptcha.component.d.ts(13,44)中的错误:错误TS1039:在环境上下文中不允许初始化。 ../node_modules/ngx-captcha/lib/components/invisible-recaptcha.component.d.ts(13,31):错误TS1039:在环境上下文中不允许初始化。 ../node_modules/ngx-captcha/lib/components/recaptcha-2.component.d.ts(13,56):错误TS1039:在环境上下文中不允许使用初始化程序。
,以后没有任何效果,只要在页面中显示正确的标签即可,但是我无法执行任何操作,不进行重置,不进行验证... 有人可以帮我。
答案 0 :(得分:1)
我遇到了相同的错误,但是使用的是reCaptcha v3。
解决方案是将软件包降级到5.0.4版。
npm install ngx-captcha@5.0.4
[ReCaptcha V3]
降级时,方法execute
的参数较少。
this.reCaptchaV3Service.execute(this.siteKey, 'homepage', (token) => {
console.log('This is your token: ', token);
});
[删除ReCaptcha V3徽章]
在index.html
上添加:
<style>
.grecaptcha-badge { visibility: collapse !important; }
</style>