Skip to content

Files

Latest commit

Feb 10, 2023
ddd5a09 · Feb 10, 2023

History

History
68 lines (61 loc) · 1.83 KB

6.md

File metadata and controls

68 lines (61 loc) · 1.83 KB

title: 第六周 date: 2023-02-06 09:39:22


技术

  • 股票数据获取
  • taro echarts common 体积问题:
    1. echarts 单独打包
      webpackChain(chain) {
            chain.optimization.sideEffects(false)
            chain.merge({
              optimization: {
                splitChunks: {
                  cacheGroups: {
                    subpackagesCommon: {
                      name: 'echartsCommon',
                      priority: 50,
                      minChunks: 2,
                      test(module) {
                        return /pages[\\/]analysis[\\/]ec-canvas[\\/]echarts.js/.test(module.resource)
                      },
                    },
                  },
                },
              },
            })
          }
    
    1. 跳过编译
    compile: {
        exclude: [
          // 跳过编译
          path.resolve(__dirname, '..', 'src/pages/analysis/ec-canvas/echarts.js'),
        ],
      }
    
    1. 注入引用【plugin】
     const fs = require('fs')
     const path = require('path')
     export default (ctx, ) => {
       ctx.onBuildFinish(() => {
         console.log('echarts构建hack注入')
         const target = path.join(ctx.paths.outputPath, 'pages/analysis/ec-canvas/ec-canvas.js')
         const data = fs.readFileSync(target, 'utf8')
         fs.writeFileSync(target, `require("../../../echartsCommon");${data}`)
       })
     }
    
    1. 问题 1:如果在 src 目录下分包,则首页白屏;所以不用分包 或者是在 pages 目录下分包
    2. 问题 2:addChunkPages 不用配置
    3. 问题 3:其实也可以反向思考:即全部都分包,使得 commonjs 只有 echarts 让体积降下来

其他