我有一个用于连接js文件的gulp文件,我有更多代码,我想这样做,因为我在网站上有不同的部分,我不希望用户下载css和js他不会使用。我目前隔离了下面的代码和最后的功能'没有输出任何东西。
//works
mix.scripts(['resources/js/jquery-2.1.1.min.js',
'resources/js/bootstrap.min.js',
'resources/js/jquery.maskedinput.min.js'],
'resources/js/common.js')
//works
.scriptsIn('resources/js/user', 'resources/js/user.js')
//NOPE! No file is created, even if I change the output directory/filename to resources/js or whatever
.scripts(['resources/js/common.js',
'resources/js/user.js'],
'public/js/user.js');
我尝试过更改它以使用基础目录,但仍然没有:
.scripts(['common.js',
'user.js'],
'public/js/user.js', 'resources/js');
有什么想法吗?
编辑:
全新的laravel项目,新的gulp文件,脚本成分只连接两个js文件中的一个(maskedinput.js一个,user.js完全被忽略,即使它们都在同一个文件夹中并且是唯一的文件有):
elixir(function(mix) {
mix.scriptsIn('resources/assets/js/user', 'resources/assets/js/user.js');
mix.scripts(['user.js', 'maskedinput.js'],
'public/js/user.js', 'resources/assets/js/');
});
答案 0 :(得分:3)
好吧,我找到了一个解决方法,让它按我想要的方式工作。我刚刚使用了纯gulp.js,通配符(docs没有任何相关信息)的用法:
mix.scripts(['maskedinput.js', 'user/*.js'],
'public/js/user.js', 'resources/assets/js/');
现在一切都正确连接。不会接受这个作为答案,因为'scriptsIn'之后的IMO'脚本'仍有问题,我很好奇这是否是一个bug。
答案 1 :(得分:0)
我相信您在更改后忘记添加.js
,因此您应该尝试使用:
.scripts(['common.js','user.js'],'public/js/user.js', 'resources/js');
修改强>
我已经再次测试了你的情况。目前看来它不起作用。由于任何Elixir函数(scriptsIn
或script
而输出的文件将不会在另一个函数中使用(例如,在这种情况下为script
)。我玩了一下有了它,现在看不到任何解决方法。