当前位置: 首页 > ds >正文

vue vite开发时保留console.log打包完后依然想保留某个文件夹下的console.log方便以后的观察

首先需要安装包

npm i terser  @rollup/plugin-strip 具体的包如下:
"@rollup/plugin-strip": "^3.0.4","terser": "^5.39.0",   // 这个不用也行  如果不用则需要将build中的minify和terserOptions一并删除了

然后在vite.config.js中进行如下配置:重点在plugins下的strip这个配置以及build下的terserOptions这个配置

  plugins: [vue(),// 重点在strip这个配置以及build下的terserOptionsstrip({include: '**/*.{js,ts,vue}',functions: ['console.log'],// 这里可以指定要排除的文件或文件夹,比如你想要保留console.log的文件exclude: ['src/utils/websockets.js',],})],resolve: {alias: {'@': fileURLToPath(new URL('./src', import.meta.url))},},build: {chunkSizeWarningLimit: 16000,minify: 'terser', // 明确指定使用 terserterserOptions: {compress: {drop_console: false, // 保留 console},}},

然后运行npm run build 找到assets下的js文件,在这个js文件中可以搜索到下边这个文件中的console.log

exclude: ['src/utils/websockets.js',],

从而说明保留了当前文件中的console.log,而其他文件中的console.log则未保留,打包完全部删除了

新的方法,并且保留在开发时所有的console.log输出不受影响,只有在打包后删除不必要的console.log

import strip from "@rollup/plugin-strip";export default defineConfig(({mode})=>({plugins: [vue(),// 打包时要解注释mode === 'production' && strip({include: '**/*.{js,ts,vue}',functions: ['console.log'],// 排除的文件(保留这些文件里的所有 console.log)exclude: ['src/utils/websockets.js',],}),].filter(Boolean), // 过滤掉 false 值(开发环境会移除 strip 插件),resolve: {alias: {'@': fileURLToPath(new URL('./src', import.meta.url))},},build: {chunkSizeWarningLimit: 16000,},......
}));
http://www.xdnf.cn/news/1042.html

相关文章:

  • C语言实现堆(优先队列)详解
  • 【Easylive】手动实现分布式事务解决方案流程解析
  • Java转Go日记(四):socket编程
  • STM32之DHT11温湿度传感器---附代码
  • vue3性能优化
  • 【数据结构_12】优先级队列
  • 深度学习3.5 图像分类数据集
  • YOLO11改进 | 特征融合Neck篇之Lowlevel Feature Alignment机制:多尺度检测的革新性突破
  • C 语言开发问题:使用 <assert.h> 时,定义的 #define NDEBUG 不生效
  • vin码识别技术-车辆vin识别代码-Java接口集成
  • 《理解C++宏:从#define到条件编译》
  • 【工具】VS Code/Cursor 编辑器状态栏颜色自定义指南
  • 装饰模式:动态扩展对象功能的优雅设计
  • AI Agent开发第35课-揭秘RAG系统的致命漏洞与防御策略
  • 极刻AI搜v1.0 问一次问题 AI工具一起答
  • 城市客运安全员证适用岗位及要求
  • QtCreator的设计器、预览功能能看到程序图标,编译运行后图标消失
  • 关于金碟云星空批号问题
  • 自动化测试
  • Psychology 101 期末测验(附答案)
  • Ubuntu 系统下安装和使用性能分析工具 perf
  • HarmonyOS-ArkUI: animateTo 显式动画
  • Git SSH 密钥多个 Git 来源
  • 承兑汇票文字录入解决方案-承兑汇票识别接口-C++集成方式
  • SQL优化
  • 安卓逆向工程:从APK到内核的层级技术解析
  • 聚客AI万字解密AI-Agent大模型智能体:从架构设计到工业落地的全栈指南
  • 算法题(130):激光炸弹
  • 力扣刷题Day 23:最长连续序列(128)
  • Azkaban集群搭建