Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Laravel Elixir组合Javascript和Coffeescript_Javascript_Laravel_Coffeescript_Gulp_Laravel Elixir - Fatal编程技术网

使用Laravel Elixir组合Javascript和Coffeescript

使用Laravel Elixir组合Javascript和Coffeescript,javascript,laravel,coffeescript,gulp,laravel-elixir,Javascript,Laravel,Coffeescript,Gulp,Laravel Elixir,在我的Laravel项目中,我有许多javascript文件和一些coffeescript文件。它们存储在以下结构中: resources/assets/js/jquery.min.js resources/assets/js/jquery.form.js resources/assets/coffee/main.coffee 我想使用Laravel Elixir和Gulp将coffeescript文件编译成Javascript,并将所有3个Javascript文件合并成一个文件并输出: pu

在我的Laravel项目中,我有许多javascript文件和一些coffeescript文件。它们存储在以下结构中:

resources/assets/js/jquery.min.js
resources/assets/js/jquery.form.js
resources/assets/coffee/main.coffee
我想使用Laravel Elixir和Gulp将coffeescript文件编译成Javascript,并将所有3个Javascript文件合并成一个文件并输出:

public/js/main.js
我的问题似乎是
mix.scripts()
只喜欢javascript文件,而
mix.coffee()
似乎只喜欢coffeescript文件,因此我发现很难获得所需的输出

我相信我可以通过在我的coffeescript上运行
mix.coffee()
,然后在生成的文件和其他两个Javascript文件上运行
mix.scripts()
,以“黑客”的方式实现这一点,但我希望有更好的方法来实现这一点

elixir(function(mix) {

    mix.scripts([
        'jquery.min.js', 'jquery.form.js'
    ], 'public/js/main1.js');

    mix.coffee([
        'main.coffee'
    ], 'public/js/main2.js');

});

我也曾为同样的问题绞尽脑汁,我认为你的“黑客”方式是唯一的方式。我发现长生不老药实际上在它接受什么和它处理事情的方式上是相当有限的。它在大多数用例中都非常有效,但是试着做一些不寻常的事情&你将陷入困境:-)谢谢你的回复。是的,这似乎是唯一的办法。我在Github上发布了一个问题/建议,并得到了Elixir作者Jeffrey Way的回复。他说没有人真正支持这样做,只是按照我的建议去做。运行
mix.coffee()
,然后使用
mix.scripts()
mix.coffee()
在其之后构建单个文件的组合。他说长生不老药是同步运行的,所以这样做应该没问题。这不是一个理想的解决方案,但我想它是可行的!