UNPKG

rerumaccusamus

Version:

The meta-framework suite designed from scratch for frontend-focused modern web development.

79 lines (67 loc) 1.63 kB
--- sidebar_label: terser --- # `tools.terser` :::info 适用的工程方案 * MWA ::: * 类型: `Object | Function` * 默认值:见下方配置详情。 <details> <summary>terser 配置详情</summary> ```js terserOptions: { parse: { ecma: 8, }, compress: { ecma: 5, warnings: false, comparisons: false, inline: 2, }, mangle: { safari10: true, }, keep_classnames: isEnvProductionProfile, keep_fnames: isEnvProductionProfile, output: { ecma: 5, comments: false, ascii_only: true, }, }, parallel: true, // Enable file caching cache: true, sourceMap: true // 设置 output.disableSourceMap 后为false } ``` :::tip 提示 更多关于:<a href="https://github.com/webpack-contrib/terser-webpack-plugin#options" target="_blank">terser 配置</a>。 ::: </details> 对应 [terser-webpack-plugin](https://github.com/webpack-contrib/terser-webpack-plugin) 的配置,值为 `Object` 类型时,与默认配置通过 `Object.assign` 合并,例如生产环境下去除 console: ```js title="modern.config.js" export default defineConfig({ tools: { terser: { terserOptions: { compress: { drop_console: true, } }, } } }); ``` 值为 `Function` 类型时,默认配置作为第一个参数传入,可以直接修改配置对象不做返回,也可以返回一个值最为最终结果: ```js title="modern.config.js" export default defineConfig({ tools: { terser: opts => { opts.terserOptions.compress.drop_console = true; } } }); ```