2

在 laravel 5.5/vue.js 应用程序中,我想使用 jquery-confirm 库,为此在我的 resources/views/layouts/app.blade.php 我写道:

    ...
            @yield('content')
        </div>

        <!-- Scripts -->
        <script src="{{ asset('js/jquery/jquery.min.js') }}"></script>
        <script src="{{ asset('js/funcs.js') }}"></script>
        <script src="{{ asset('js/my_app.js') }}"></script>
        <script src="{{ asset('js/jquery/jquery-confirm.min.js') }}"></script>
        <script src="{{ asset('js/app.js') }}"></script>

</body>
<footer>
</footer>
</html>

但是在控制台中我得到了错误:

Uncaught TypeError: $.confirm is not a function

将文件附加到应用程序的方式是否错误?哪个是正确的方法?

谢谢!

4

1 回答 1

4

我建议这样做的方式是:

通过 NPM 安装 jquery-confirm,最简单的方法是将它添加到 package.json 中的依赖项下,例如:

"dependencies": {
      ...
      "jquery-confirm": "^3.3.2" 
 }

app.js然后在你的jquery 之后需要它

require('./bootstrap');
require('jquery-confirm');

下次编译包时,它应该包含在你的 app.js 中

如果您坚持将其包含在您的源代码中,那么以下其中一项将起作用:

  1. 确保文件在您的/resources/assets/js文件夹中。然后将您webpack.mix.js的更新为以下内容:

    mix.js('resources/assets/js/app.js', 'public/js')
        .sass('resources/assets/sass/app.scss', 'public/css')
        .copy('resources/assets/js/jquery-confirm.min.js', 'public/css/jquery-confirm.min.js');
    

或者

  1. 确保文件在您的/public/js文件夹中

通过执行其中任何一项操作,您还需要确保文件在以下时间加载app.js

<script src="{{ asset('js/app.js') }}"></script>
<script src="{{ asset('js/jquery/jquery-confirm.min.js') }}"></script>
于 2017-11-26T09:13:12.177 回答