2017-03-01 59 views
0

我有一个项目,有大约10个JavaScript文件。我想使用Laravel混合webpack来组合和版本的js文件。文件得到组合,但版本控制不起作用。它只适用于我的scss文件。它曾经在Laravel灵丹药中工作。我查了混音的manifest.json文件中的公共目录,这是我发现:Laravel 5.4混合版本问题

{ 
    "mix.js": "mix.b2328beb0372c051d06d.js", 
    "/css/main.css": "/css/main.bb97b313cc88fe75b545.css", 
    "/js/main.js": "/js/main.js" 
} 

我找了mix.js文件,我不能在我的项目的任何地方找到它。

这里是我的webpack.mix.js文件:

mix.combine(
    [ 
     'resources/assets/js/jRespond.js', 
     'resources/assets/js/sweetalert.min.js', 
     .... 
    ] 
    , 'public/js/main.js') 
    .sass('resources/assets/sass/main.scss', 'public/css/main.css') 
    .version(); 

谢谢

回答

0

的版本似乎不工作正确的方法combine的确但使用js方法应该做的伎俩:

mix.js(
[ 
    'resources/assets/js/jRespond.js', 
    'resources/assets/js/sweetalert.min.js', 
    .... 
] 
, 'public/js/main.js') 
.sass('resources/assets/sass/main.scss', 'public/css/main.css') 
.version(); 
+0

我正在使用的原因合并在一起,因为mix.js不支持我正在使用的插件。当我使用mix.js时,一切都编译正确,但是在浏览器中有很多错误。例如,我使用名为MatchHeight的插件。如果我使用组合或甚至是旧灵药,这个插件工作正常。但是使用mix.js,我检查了chrome开发工具,发现matchheight不是函数错误。我也在我的脚本之前加载jquery 2.1.4,bootstrap抱怨说我需要加载高于1.9.1的版本。我不确定发生了什么 – rafiaTech

+0

然后,您可能想要联系Laravel的开发人员,因为“version”对'combine“不起作用看起来像一个bug。 –

0

我找到了解决方案。我只是不得不将我的Laravel-mix更新到更新的版本。 Jeffery Way为mix.combine和mix.scripts添加了版本控制