gpt4 book ai didi

javascript - UglifyJS - 转换文件夹中的所有 .js

转载 作者:数据小太阳 更新时间:2023-10-29 04:21:16 38 4
gpt4 key购买 nike

我想知道是否有人可以提供帮助,我正在尝试完成目前使用 babel 转译 es6 > es5 的构建过程,完成后我想使用 uglifyJS 仅使用 NPM 递归缩小我所有的 .js 文件脚本(请不要发出咕噜声或吞咽声)。

我想要的;

  • 将文件夹中的所有 .js 转换为 es5
  • 使用 uglify 缩小给定文件夹中的所有 .js 文件
  • 创建源 map
  • 复制到新文件夹

我当前的设置;

  • 将所有 .js 转换为 es5
  • 缩小所有 es5 .js 文件(但是没有创建源映射,es5 js 文件也被替换,因为不支持移动到另一个文件夹)

我试过:https://www.npmjs.com/package/recursive-uglifyjshttps://www.npmjs.com/package/uglifyjs-folder但是这些似乎都无法执行我需要的构建步骤

这是我的 package.json 脚本部分

   "babel": "babel js_uncompiled --out-dir js_uncompiled/es5 --source-maps  && npm run npm:uglify",
"build": "npm run babel",
"uglify": "recursive-uglifyjs js_uncompiled/es5"

您可以在此处找到我的完整 package.json 的链接:http://pastebin.com/4UHZ1SGM

谢谢

最佳答案

已编辑:包括来自评论的信息

所以,现在uglifyjs-folder可以选择传递一个配置文件,这样你就可以运行所有 uglify 的命令,但是在整个文件夹上(你可以使用 harmony - as stated in comments 转换为 ES5)。

请注意,这比使用 cat 或其他 shell 命令手动执行此操作要好,因为 uglifyjs-folder 可以生成单个输出文件(串联)并且使用起来更简单.

运行 uglifyjs-folder "%CD%"--config-file "uglify.config.json"--output "folder"-e 其中配置文件(在项目的根文件夹中) 包含例如(不是所有需要的选项):

{
“压缩”:是的,
“mangle”:是的,
“源 map ”:{
"base": "输入/路径/",
“内容”:“输入/源 map ”,
"文件名": "{文件}.min.js",
“includeSources”:真实的,
"root": "原始/来源/路径",
“网址”:“来源/路径”
}
}

观察:目前有一个 open issue由我自己,因为源映射导致错误。问题解决后,我将在此处更新我的答案。

更新:好的,问题已解决,1.5 版已发布!上面的代码已更新

关于javascript - UglifyJS - 转换文件夹中的所有 .js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38309942/

38 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com