Google Captcha v3 отлично работает при вводе кода сценария в тег , но не работает при вводе app.js из смеси Laravel

#javascript #php #laravel #npm

Вопрос:

Я использую Laravel 8.x, Google Captcha v3, Laravel, смесь Laravel/Ui — Auth начальной загрузки

В resources/views/layouts/app.blade.php

 <head>
    <script src="https://www.google.com/recaptcha/api.js"></script>
</head>
 

В resources/views/auth/login.blade.php

 <form method="POST" action="{{ route('login') }}" id="recaptcha-form">
    <button type="submit" class="btn btn-primary g-recaptcha" 
         data-sitekey="{{ env('GOOGLE_RECAPTCHA_KEY') }}" data-callback="onSubmit" 
         data-action="submit">
              {{ __('Login') }}
    </button>
</form>
 

Проблема в том, что это прекрасно работает, когда я помещаю код сценария непосредственно в html-файлы, подобные этому:

В resources/views/layouts/app.blade.php

 <body>
    ...
    <script type="text/javascript">
    function onSubmit(token) {
        document.getElementById("recaptcha-form").submit();
    }
    </script>
</body>
 

Но когда я помещаю приведенный выше скрипт в js файла Laravel Mix resources/js/app.js , он, кажется, не работает и не показывает никаких ошибок

 require('./bootstrap');
...
function onSubmit(token) {
    document.getElementById("recaptcha-form").submit();
}
 

Конечно, я командую npm run dev