uni-app uni-ui uni-data-checkbox组件本地引入就占用了100k空间

uni-app uni-ui uni-data-checkbox组件本地引入就占用了100k空间

示例代码:

<template>
<view class="container">
<uni-data-checkbox v-model="testval" :localdata="localdata"></uni-data-checkbox>
{{testval}}
</view>
</template> 
<script setup>
import { ref } from 'vue';
const testval = ref();
const localdata = [
{
value: 0,
text: '否'
},
{
value: 1,
text: '是'
}
];
</script>

操作步骤:

编辑器创建一个默认的uni-ui项目
引入<uni-data-checkbox v-model="testval" :localdata="localdata"></uni-data-checkbox>

预期结果:

普通选择框占用大小

实际结果:

占用太大

bug描述:

项目使用 <uni-data-checkbox v-model="testval" :localdata="localdata"></uni-data-checkbox>
运行到小程序后包占用增加100k

附件



pages.zip

信息类别 详细信息
产品分类 uniapp/小程序/微信
PC开发环境操作系统 Windows
PC开发环境操作系统版本号 Windows 11 专业版
HBuilderX类型 正式
HBuilderX版本号 4.75
第三方开发者工具版本号 1.06.25004010 win32-x64
基础库版本号 3.9.0
项目创建方式 HBuilderX

更多关于uni-app uni-ui uni-data-checkbox组件本地引入就占用了100k空间的实战教程也可以访问 https://www.itying.com/category-93-b0.html

4 回复

uni-data-checkbox 有不少依赖,都占体积

更多关于uni-app uni-ui uni-data-checkbox组件本地引入就占用了100k空间的实战教程也可以访问 https://www.itying.com/category-93-b0.html


在小程序端还是太占主包体积了,放到分包也会占用主包。如果是合理的话,就自行实现了。

回复 哈哈柚: 可以考虑自行实现,或者用一些第三方库

uni-data-checkbox 组件体积较大的原因在于它依赖了 uni-ui 的完整数据驱动体系。这个组件不仅包含基础的 UI 展示逻辑,还集成了数据绑定、验证、国际化等完整功能模块。

在小程序环境下,由于打包机制会将整个组件及其依赖全部包含在内,即使只使用基础功能,也无法进行按需裁剪。100k 的体积增长主要来自:

  1. 数据验证系统
  2. 国际化支持
  3. 完整的样式系统
  4. 事件处理机制

如果只需要基础的选择功能,建议使用原生 picker 组件或自定义简单组件替代:

<view class="checkbox-group">
  <view 
    v-for="item in localdata" 
    :key="item.value"
    :class="['checkbox-item', { active: testval === item.value }]"
    @click="testval = item.value"
  >
    {{ item.text }}
  </view>
</view>
回到顶部