首页 > 解决方案 > 如何在不添加后缀.min.js的情况下缩小laravel mix中的JS?

问题描述

我尝试使用如下缩小方法:

    mix.minify('public/js/folder/script1.js');
    mix.minify('public/js/folder/script2.js');

但它会创造script1.min.jsscript2.min.js

我也试过:

    mix.minify('public/js/folder/script1.js', 'public/js/folder/script1.js');
    mix.minify('public/js/folder/script2.js', 'public/js/folder/script2.js');

并且仍然创建相同的文件。如何在不添加后缀的情况下缩小.min.js?

标签: laravelminifylaravel-mix

解决方案


我找不到 laravel-mix 解决方案,所以我使用了另一个使用uglifyjs-folder 的解决方案:

 npm install uglifyjs-folder --save-dev

添加&& uglifyjs-folder public/js -e -x .js -o public/js到 prod 脚本中的 package.js,如下所示:

"scripts": {
    "dev": "npm run development",
    "development": "mix",
    "watch": "mix watch",
    "watch-poll": "mix watch -- --watch-options-poll=1000",
    "hot": "mix watch --hot",
    "prod": "npm run production && uglifyjs-folder public/js -e -x .js -o public/js",
    "production": "mix --production"
},

运行后它将缩小.js文件public/js夹中的所有文件npm run prod

也许这不是最佳实践,但它适用于已经不好实践的现有项目;


推荐阅读