跳到主要内容

2 月

第六周:股票数据、taro echarts、carbonyl

技术

  • 股票数据获取
  • 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 让体积降下来

其他

第七周:poline

其他