哈哈柚
哈哈柚
  • 发布:2025-04-29 16:18
  • 更新:2025-06-06 09:14
  • 阅读:324

【报Bug】配置发布时删除console.log,开发环境也没log了

分类:uni-app

产品分类: uniapp/小程序/微信

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: Windows 11 专业版

HBuilderX类型: 正式

HBuilderX版本号: 4.57

第三方开发者工具版本号: 1.06.2503281win32-x64

基础库版本号: 3.8.2

项目创建方式: HBuilderX

示例代码:
import { defineConfig } from 'vite';  
import uni from '@dcloudio/vite-plugin-uni';  

export default defineConfig({  
    plugins: [uni()],  
    build: {  
        minify: 'terser',  
        terserOptions: {  
            compress: {  
                drop_console: true,  
            },  
        },  
    },  
});  

操作步骤:

hbuildx创建初始项目,配置vite.config.js后,使用菜单运行到微信小程序(并非 发行)

预期结果:

只在发行时删除log

实际结果:

开发模式也没有log

bug描述:

根据官方文档 vite-config
配置了如下代码,发现点击 菜单-运行-运行到小程序模拟器-微信开发工具时,也没有log打印了。

import { defineConfig } from 'vite';  
import uni from '@dcloudio/vite-plugin-uni';  

export default defineConfig({  
    plugins: [uni()],  
    build: {  
        minify: 'terser',  
        terserOptions: {  
            compress: {  
                drop_console: true,  
            },  
        },  
    },  
});  

尝试添加

serve:{  
        terserOptions: {  
            compress: {  
                drop_console: false,  
            },  
        },  
    }

dev:{  
        terserOptions: {  
            compress: {  
                drop_console: false,  
            },  
        },  
    }

发现也都无效

2025-04-29 16:18 负责人:DCloud_UNI_JBB 分享
已邀请:
DCloud_UNI_JBB

DCloud_UNI_JBB

微信小程序开发环境也要打包,产物放到开发者工具里面运行。你想决定是否留日志打印可以通过 process.env.NODE_ENV 来判断,如果是 development 就是开发环境,发行就是 production


// vite.config.js  
import {  
    defineConfig  
} from "vite"  
import uni from '@dcloudio/vite-plugin-uni';  

const config = process.env.NODE_ENV === 'development' ? {  
    plugins: [uni()]  
} : {  
    plugins: [uni()],  
    build: {  
        minify: 'terser',  
        terserOptions: {  
            compress: {  
                drop_console: true,  
            },  
        },  
    },  
}  
export default defineConfig(config);
  • 哈哈柚 (作者)

    好的感谢

    2025-04-29 17:00

s***@163.com

s***@163.com

vite.config.ts

import type { Plugin } from 'vite';  
import { defineConfig } from 'vite';  
import uni from '@dcloudio/vite-plugin-uni';  
import path from 'path';  
import fs from 'fs';  

// https://vitejs.dev/config/  
export default defineConfig({  
  server: {  
    fs: {  
      allow: [path.resolve(__dirname, 'h5')],  
    },  
    headers: {  
      'Cross-Origin-Opener-Policy': 'same-origin',  
      'Cross-Origin-Embedder-Policy': 'require-corp',  
      // 'Content-Type': 'application/wasm',  
    },  
    proxy: {  
      '/h5/sqlite3.wasm': {  
        bypass: (req, res, options) => {  
          const filePath = path.resolve(__dirname, 'public/h5/sqlite3.wasm');  
          if (fs.existsSync(filePath)) {  
            res.statusCode = 200;  
            res.setHeader('Content-Type', 'application/wasm');  
            fs.createReadStream(filePath).pipe(res);  
          } else {  
            res.statusCode = 404;  
            res.end('File not found');  
          }  
        },  
      },  
    },  
  },  
  build: {  
    minify: 'terser',  
    terserOptions: {  
      compress: {  
        drop_console: true,  
      },  
    },  
  },  
  plugins: [uni()],  
});  

package.json

{  
  "name": "uni-preset-vue",  
  "version": "0.0.0",  
  "scripts": {  
    "dev:custom": "uni -p",  
    "dev": "uni",  
    "dev:h5:ssr": "uni --ssr",  
    "dev:mp-alipay": "uni -p mp-alipay",  
    "dev:mp-baidu": "uni -p mp-baidu",  
    "dev:mp-jd": "uni -p mp-jd",  
    "dev:mp-kuaishou": "uni -p mp-kuaishou",  
    "dev:mp-lark": "uni -p mp-lark",  
    "dev:mp-qq": "uni -p mp-qq",  
    "dev:mp-toutiao": "uni -p mp-toutiao",  
    "dev:mp-weixin": "uni -p mp-weixin",  
    "dev:mp-xhs": "uni -p mp-xhs",  
    "dev:quickapp-webview": "uni -p quickapp-webview",  
    "dev:quickapp-webview-huawei": "uni -p quickapp-webview-huawei",  
    "dev:quickapp-webview-union": "uni -p quickapp-webview-union",  
    "build:custom": "uni build -p",  
    "build:h5": "uni build",  
    "build:h5:ssr": "uni build --ssr",  
    "build:mp-alipay": "uni build -p mp-alipay",  
    "build:mp-baidu": "uni build -p mp-baidu",  
    "build:mp-jd": "uni build -p mp-jd",  
    "build:mp-kuaishou": "uni build -p mp-kuaishou",  
    "build:mp-lark": "uni build -p mp-lark",  
    "build:mp-qq": "uni build -p mp-qq",  
    "build:mp-toutiao": "uni build -p mp-toutiao",  
    "build:mp-weixin": "uni build -p mp-weixin",  
    "build:mp-xhs": "uni build -p mp-xhs",  
    "build:quickapp-webview": "uni build -p quickapp-webview",  
    "build:quickapp-webview-huawei": "uni build -p quickapp-webview-huawei",  
    "build:quickapp-webview-union": "uni build -p quickapp-webview-union",  
    "type-check": "vue-tsc --noEmit",  
    "build": "uni build -p app",  
    "format": "prettier --write \"./**/*.{ts,tsx,js,jsx,vue,css,scss,json,md}\"",  
    "prepare": "husky install",  
    "format:fix": "prettier --write . && tsc --noEmit || true",  
    "lint": "eslint"  
  },  
  "dependencies": {  
    "@dcloudio/uni-app": "3.0.0-4060420250429001",  
    "@dcloudio/uni-app-harmony": "3.0.0-4060420250429001",  
    "@dcloudio/uni-app-plus": "3.0.0-4060420250429001",  
    "@dcloudio/uni-components": "3.0.0-4060420250429001",  
    "@dcloudio/uni-h5": "3.0.0-4060420250429001",  
    "@dcloudio/uni-mp-alipay": "3.0.0-4060420250429001",  
    "@dcloudio/uni-mp-baidu": "3.0.0-4060420250429001",  
    "@dcloudio/uni-mp-harmony": "3.0.0-4060420250429001",  
    "@dcloudio/uni-mp-jd": "3.0.0-4060420250429001",  
    "@dcloudio/uni-mp-kuaishou": "3.0.0-4060420250429001",  
    "@dcloudio/uni-mp-lark": "3.0.0-4060420250429001",  
    "@dcloudio/uni-mp-qq": "3.0.0-4060420250429001",  
    "@dcloudio/uni-mp-toutiao": "3.0.0-4060420250429001",  
    "@dcloudio/uni-mp-weixin": "3.0.0-4060420250429001",  
    "@dcloudio/uni-mp-xhs": "3.0.0-4060420250429001",  
    "@dcloudio/uni-quickapp-webview": "3.0.0-4060420250429001",  
    "@sqlite.org/sqlite-wasm": "3.49.1-build4",  
    "kysely-wasm": "^1.2.1",  
    "vue": "^3.5.13",  
    "vue-i18n": "^9.14.4"  
  },  
  "devDependencies": {  
    "@dcloudio/types": "^3.4.15",  
    "@dcloudio/uni-automator": "3.0.0-4060420250429001",  
    "@dcloudio/uni-cli-shared": "3.0.0-4060420250429001",  
    "@dcloudio/uni-stacktracey": "3.0.0-4060420250429001",  
    "@dcloudio/vite-plugin-uni": "3.0.0-4060420250429001",  
    "@typescript-eslint/eslint-plugin": "^8.31.1",  
    "@typescript-eslint/parser": "^8.31.1",  
    "@vue/runtime-core": "^3.5.13",  
    "@vue/tsconfig": "^0.1.3",  
    "eslint": "^9.25.1",  
    "husky": "^9.1.7",  
    "kysely": "workspace:*",  
    "lint-staged": "^15.5.1",  
    "prettier": "^3.5.3",  
    "ts-prune": "^0.10.3",  
    "typescript": "^4.9.5",  
    "vite": "5.2.8",  
    "vue-tsc": "^1.8.27"  
  },  
  "lint-staged": {  
    "src/**/*.{ts,tsx,js,jsx,vue,css,scss,json,md}": [  
      "prettier --write"  
    ]  
  }  
}

pnpm build 之后

Run method: open HBuilderX, import dist\build\app run.

日志没有删除

DCloud_UNI_JBB

DCloud_UNI_JBB

感谢反馈,你手动替换一下 packages/uni-cli-shared/dist/vite/plugins/console.js 为 附件中的文件

雨夜敬清秋

雨夜敬清秋

HBuilder X 4.66 ARM

DCloud_UNI_JBB

DCloud_UNI_JBB

HBuilder X 4.66 ARM 测试 h5 正常移除 console.log

  • 雨夜敬清秋

    请看这里,重新上传了可以复现问题的demo https://ask.dcloud.net.cn/question/210117

    2025-06-06 09:17

雨夜敬清秋

雨夜敬清秋

我重新开个帖子发附件

要回复问题请先登录注册