2017-02-10 1 views
0

TypeError: Невозможно прочитать значение свойства 'null в Object.wo [as getResponse] (recaptcha__en.js: 302) в m. $ Scope.acessCode (app.js: 66) в fn (eval at compile (angular.min.js: 1),: 4: 218)googe reCaptcha im using ui.router во второй ошибке im getiing в agular js

+0

, пожалуйста, помогите мне, я не смог исправить эту ошибку за 4 дня. –

+0

Приветствуем вас в StackOverflow. Пожалуйста, найдите время, чтобы прочитать страницу справки, особенно разделы с названием [«Какие темы можно задать здесь?»] (Http://stackoverflow.com/help/on-topic) и [«Какие типы вопросов я должен не спрашивать? "] (http://stackoverflow.com/help/dont-ask). И что еще более важно, прочитайте [контрольный список вопросов переполнения стека] (http://meta.stackexchange.com/q/156810/204922). Вы также можете узнать о [Минимальных, Полных и Подтверждаемых примерах] (http://stackoverflow.com/help/mcve). –

+0

Пожалуйста, добавьте часть своего кода, чтобы помочь нам понять проблему. –

ответ

0

ui.router снова загрузит виджет, поэтому я подозреваю, что проблема связана с тем, что вы вызываете vcRecaptchaService .getResponse();

Как упомянуто здесь https://github.com/VividCortex/angular-recaptcha/issues/81

getResponse() has a argument that must be passed to it, the widgetId, when multiple recaptcha widgets are registered/on the same page. Since you have a SPA, even though the first widget is no longer there, it is still registered in Google's code.

Ваше решение создать функцию обратного вызова в контроллере

$scope.createCallback = function(widgetId){ 
     $scope.widgetId = widgetId; 
    }; 

Тогда при создании Recaptcha вызовите функцию создания

<div vc-recaptcha key="'key'" on-create="createCallback(widgetId)"></div> 

И затем обратно к контроллеру передайте widgetId, когда tr ying to getresponse

$scope.Response = vcRecaptchaService.getResponse($scope.widgetId); 
Смежные вопросы