【问题标题】:Laravel Elixir and Bower: Mixing javascript issueLaravel Elixir 和 Bower:混合 javascript 问题
【发布时间】:2015-04-27 18:08:13
【问题描述】:

我的 Bower 供应商目录位于 resources/assets/vendor

在我的 gulpfile 中,我尝试了以下方法:

mix.scripts([
    "vendor/jquery/dist/jquery.min.js"
], "public/js");

当我在终端中运行gulp 时,它似乎什么也没做。不过没有错误。

我也试过这个:

mix.copy('vendor/jquery/dist/jquery.min.js', 'public/js/jquery.js');

无济于事。

我错过了什么?

更新和解决方案

默认情况下,resources/assets/[sass/coffee/less] 中仅查找 sass、less 和咖啡脚本,而 JS 文件仅在 resources/js 中查找,这让我很困惑。小心。

【问题讨论】:

    标签: laravel bower laravel-5 laravel-elixir


    【解决方案1】:

    首先,我们不知道您的jquery.min.js 文件的位置。但是,脚本文件的默认位置是 resources/js,因此要使其正常工作,您应该将 jquery.min.js 文件放在 resources/js/vendor/jquery/dist/jquery.min.js 中。

    作为第二个参数,您应该将目标文件名与路径一起传递,例如:

    mix.scripts([
        "vendor/jquery/dist/jquery.min.js"
    ], "public/js/jquery.min.js");
    

    假设正如我在开头提到的那样,您在 resources/js/vendor/jquery/dist/jquery.min.js 位置有这个 JS 文件

    如果你不这样做,你应该使用第三个参数。因此,在这种情况下,如果您的 JS 文件确实位于“vendor/jquery/dist/jquery.min.js”位置,您可以使用:

    mix.scripts([
        "jquery.min.js"
    ], "public/js/jquery.min.js", "vendor/jquery/dist");
    

    让它工作。

    编辑

    在cmets中解释后,应该使用then:

    mix.scripts([
        "vendor/jquery/dist/jquery.min.js"
    ], "public/js/jquery.min.js", "resources/assets/js");
    

    【讨论】:

    • 我的 jquery.min.js 位于 resources/js/vendor/jquery/dist/jquery.min.js,运行 gulp 时没有任何反应:\
    • @PetterThowsen 所以你应该使用我展示的第一个代码,但作为第二个参数你需要传递文件名而不仅仅是目录。
    • @PetterThowsen 我刚刚检查过,文件生成没有问题。您是否有任何 gulp 信息,例如 starting gulp 等?你还应该确保安装了最新的 Laravel elixir。您应该考虑删除 node_modules 文件夹并再次运行 npm install 以获取所有模块的新副本。 (你当然应该备份这个目录以防万一)
    • @PetterThowsen 因此,您可能应该怀疑您是否有与我完全相同的代码,并且您在resources/js/vendor/jquery/dist/jquery.min.js 路径中有此文件,没有空格,与提供的字母大小写相同。
    猜你喜欢
    • 2023-03-27
    • 1970-01-01
    • 1970-01-01
    • 2023-03-03
    • 1970-01-01
    • 2015-10-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多