无法读取空的 属性 'value' | angular-重新验证

Cannot read property 'value' of null | angular-recaptcha

在我的 SPA 中,我使用 angular-recaptcha。我在两个不同的地方有一个 reCaptcha 表单。如果我完成任何一个 reCaptchas,我将无法再次完成另一个或同一个,直到我清除缓存。

错误:

Cannot read property 'value' of null

我在网上找到了一些资源,例如: https://gedgei.wordpress.com/2015/08/07/using-recaptcha-in-single-page-applications/

我已尽我所能遵循该指南,但错误仍然存​​在。

html:

<div class="g-recaptcha" vc-recaptcha key="publicKey" on-create=getRecaptchaId(widgetId)">

控制器:

  var newWidgetId;

  $scope.getWidgetId = function(widgetId) {
    newWidgetId = widgetId;
    return;
  };

  var reCaptcha = vcRecaptchaService.getResponse(newWidgetId)

您的 on-create 事件处理程序 getRecaptchaId(widgetId) 不受控制器范围的限制。

在您的控制器上,更改:

var getWidgetId = function(widgetId) {
    newWidgetId = widgetId;
    return;
};

收件人:

$scope.getRecaptchaId = function(widgetId) {
    newWidgetId = widgetId;
    return;
};