您的位置:首页 > 汽车 > 新车 > 优化设计英语_长沙制作网站设计多少钱_杭州优化外包_长沙seo推广公司

优化设计英语_长沙制作网站设计多少钱_杭州优化外包_长沙seo推广公司

2025/5/1 9:49:25 来源:https://blog.csdn.net/qq_45019494/article/details/147060157  浏览:    关键词:优化设计英语_长沙制作网站设计多少钱_杭州优化外包_长沙seo推广公司
优化设计英语_长沙制作网站设计多少钱_杭州优化外包_长沙seo推广公司

前言

  • 因为有时候js文件没有npm包,或者需要修改,只能引入静态的js,那么这个时候就可以对js进行压缩了。
  • 我其实想通过vite、webpack等插件进行压缩的,可是他都不能定位到public目录下面的文件,所以我只能自己压缩了。
  • 编写下面的脚本可以放在vite、webpack配置文件中,但是不想这样操作,就是有没有这样的插件。欢迎评论推荐。

安装uglifyjs依赖

  • 我是直接手动,所以选择全局安装的方式。
npm install uglifyjs -g
  • 单个文件压缩
uglifyjs file.js -o out.js
  • 多个文件的压缩
    • 暂时没有找到命令,自己写了一个脚本
// index.js
const fs = require('fs');
const path = require('path');
const { exec } = require('child_process');function getJSFiles(dir) {const files = [];function traverseDirectory(currentDir) {const entries = fs.readdirSync(currentDir, { withFileTypes: true });for (const entry of entries) {const entryPath = path.join(currentDir, entry.name);if (entry.isDirectory()) {traverseDirectory(entryPath);} else if (path.extname(entry.name) === '.js') {files.push(entryPath);}}}traverseDirectory(dir);return files;
}
function compressFile(file) {exec(`uglifyjs ${file} -o ${file}`, (error, stdout, stderr) => {if (error) {console.error(`执行命令时出错: ${error.message}`);return;}if (stderr) {console.error(`命令执行时出现错误: ${stderr}`);return;}console.log(`文件压缩成功: ${file}`);});
}
// 目录、可根据需要修改目录路径
const directoryPath = 'c:\\x\\x\\x'; 
const jsFiles = getJSFiles(directoryPath);
console.log(jsFiles);for (const file of jsFiles) {compressFile(file);
}
  • 执行命令
# 修改成自己的文件名称
node index.js

效果

效果

  • 压缩率为1-(5.68/9.63)≈41.02%

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com