taro小程序terser-webpack-plugin插件不生效

背景

taro小程序terser-webpack-plugin插件不生效

运行环境:

taro3.6.32+vue3.2.24 +webpack5

不断尝试过

按官网这种配置不生效,然后又看了文档中赋的这个链接《编写插件,将 Taro 编译打包耗时缩短至三分之一》。

按这个文档中的配置,发现都不生效

而且这个提供的代码包还报错

我自己优化了一下,不报错了,但是打包体积也没减少,扎心

js 复制代码
//优化后的代码
const TerserPlugin = require('terser-webpack-plugin');

module.exports = (ctx) => {
  ctx.modifyWebpackChain((args) => {
    const chain = args.chain;
    // 确保最小化处理开启
    chain.optimization.minimize(true);

    // 替换或添加到现有的minimizer数组,这里直接替换为TerserPlugin的实例
    chain.optimization.set('minimizer', [
      new TerserPlugin({
        test: ['common.js', 'taro.js', 'vendors.js'],
        terserOptions: {
          compress: true,
        },
      }),
      // 如果有其他minimizer需要保持,可以在这里继续添加
    ]);
  });
};

然后,然后我就去taro的源码

各种各种找,从打包的函数开始,找插件的解析方式,后面定位到了这里

原来解析的时候是按这个名字解析的,官网给的这块有问题

解决方法

把install,改为terse,问题解决

js 复制代码
const TerserPlugin = require('terser-webpack-plugin');

...
  mini: {
    webpackChain: (chain) => {
      chain.merge({
        plugin: {
          // 解决包体积过大无法进行预览的问题
          terse: {
            plugin: TerserPlugin,
            args: [
              {
                test: /\.js(\?.*)?$/i,
                minify: TerserPlugin.swcMinify,
                terserOptions: {
                  compress: true,
                  sourceMap: true, 
                },
              }
            ]
          }
        }
      })
    }
  },
相关推荐
天呐草莓31 分钟前
企业微信自动打标签教程
大数据·python·微信·微信小程序·小程序·企业微信
说私域1 小时前
基于AI智能名片链动2+1模式S2B2C商城小程序的商户端微商平台构建研究
大数据·人工智能·小程序
2501_916008891 小时前
iPhone 耗电异常检测的思路,从系统电池统计、克魔(KeyMob)、Instruments等工具出发
android·ios·小程序·uni-app·cocoa·iphone·webview
2501_915921431 小时前
App Store 上架流程中常见的关键问题
android·ios·小程序·https·uni-app·iphone·webview
00后程序员张11 小时前
python 抓包在实际项目中的合理位置,结合代理抓包、设备侧抓包与数据流分析
android·ios·小程序·https·uni-app·iphone·webview
2501_9159184118 小时前
使用 HBuilder 上架 iOS 应用时常见的问题与应对方式
android·ios·小程序·https·uni-app·iphone·webview
2501_9160074720 小时前
iOS 崩溃日志的分析方法,将崩溃日志与运行过程结合分析
android·ios·小程序·https·uni-app·iphone·webview
2501_9160074721 小时前
React Native 混淆在真项目中的方式,当 JS 和原生同时暴露
javascript·react native·react.js·ios·小程序·uni-app·iphone
浅箬21 小时前
Taro3的H5项目在Android、IOS 中因为兼容性问题导致的白屏问题
android·团队开发·taro
00后程序员张21 小时前
苹果应用商店上架App流程,签名证书、IPA 校验、上传
android·ios·小程序·https·uni-app·iphone·webview