微信小程序 分包

微信小程序 分包

app.json

// 分包 一些除tab外的模块 可包括组件
// root 分包页面所属文件夹路径
// name 自定义分包名
// pages 分包具体页面相对root的文件路径 到(.wxml)可省略
"subPackages": [
    {
        "root": "pages/PK",
        "name": "PK",
        "pages": [
            "PKMine/PKMine",
        ]
    },
    {
        "root": "components",
        "name": "Component",
        "pages": [
            "card/card"
        ]
    }
],
// app.json 广义上的全局组件按需注入
"lazyCodeLoading": "requiredComponents",

page.json

lazyCodeLoading会导致所有被引用的组件都被视为页面依赖并注入和记载,也就是说会在主包加载时一起加载,一些比较大的组件可以用原生组件占位以实现仍按需注入。

// 页面使用组件的地方
"usingComponents": {
    "ec-canvas": "../../../components/ec-canvas/ec-canvas"
},
// 用原生view组件占位
"componentPlaceholder": {
    "ec-canvas": "view"
}

page.ts

// 分包A引用分包B的方法
// 原代码在分包后无法找到依赖:
// import * as echarts from '../../../components/ec-canvas/echarts'

// 解决方案:require
let echarts:any;

require('../../../components/ec-canvas/echarts.js', ec => {
    echarts = ec
}, ({mod, errMsg}) => {
    console.log(`path: ${mod}, ${ errMsg}`)
})
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值