更新记录

1.0.3(2024-07-01)

修复同一目录下有同名的js和vue文件造成分包错误的bug

1.0.2(2024-06-09)

  1. 支持跨分包 JS 代码引用
  2. 优化代码

1.0.1(2024-05-23)

新增字节跳动小程序

查看更多

平台兼容性

uni-app

Vue2 Vue3
?
app-vue app-nvue app-android app-ios
? ? ? ?
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari
? ? ? ? ? ? ? ? ?
微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序 钉钉小程序 快手小程序 飞书小程序 京东小程序
? ? ? ? ? ? ? ? ?
快应用-华为 快应用-联盟
? ?

uni-app x

app-android app-ios
? ?
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari
? ? ? ? ? ? ? ? ?

xzh-subpackage-plugin

一个微信小程序分包的 vite 插件,主要是对 vendor.js 这个文件进行分包

详情请下载示例项目

示例项目的效果

分包模式\包名 pages sub-pages sub-pagesB TUIKit
不使用插件,开发版 3593.6 KB 82.1 KB 83.5 KB 1313.3 KB
不使用插件,正式版 1959.9 KB 72,4 KB 69,7 KB 743.3 KB
使用插件,开发版 969.5 KB 98.8 KB 1413.2 KB 2594.8 KB
使用插件,正式版 481.0 KB 82.1 KB 605.9 KB 1679.0 KB

使用方式:

创建 vite.config.js。参考地址uni-app 官网 (dcloud.net.cn)

引用插件

import { defineConfig } from 'vite';
import uni from '@dcloudio/vite-plugin-uni';
import uniSubpackagePlugin from './uni_modules/xzh-subpackage-plugin/js_sdk/index.js';

export default defineConfig({
    plugins: [
        uni(),
        uniSubpackagePlugin({
            // 忽略文件,因为有些文件分包后会报错,所以要忽略掉,可以使用相对路径比如 /pages/index/index.js
            exclude: ['@tuniao']
        })
    ]
});

跨分包 JS 代码引用

import('../../sub-pagesB/utils/day.js').then((dayjs) => {
    this.time = dayjs().format('YYYY-MM-DD');
});

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件不采集任何数据

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问