fix: Vue2 到 Vue3 迁移兼容修复

- 修复 uni-popup-dialog/uni-data-picker keypress.js 中 $once 在 H5 端报错(改用生命周期钩子清理监听)
- main.js 补 $delete globalProperties polyfill(z-paging 自动高度逻辑依赖)
- App.vue onLaunch 补设备信息初始化,修复 X-Device-Id 恒为 unknown
- 68 处 ::v-deep、/deep/ 旧深度选择器替换为 :deep()(含 login-page.scss)
- zetank-personalpage 组件 .sync 修饰符改为 v-model:xxx(Vue3 已移除 .sync)
- vite.config.js HBuilderX 路径支持 HBUILDERX_HOME 环境变量覆盖
- 根 package.json 清理 image-grid 插件遗留元数据
- 收录此前未提交的 uView Vue3 兜底补丁(common/uview-init.js 及各组件 props.js)
This commit is contained in:
2026-09-06 19:36:36 +08:00
parent a68bf43112
commit 99c139d6ce
126 changed files with 1223 additions and 1080 deletions
@@ -1,121 +1,122 @@
import '@/common/uview-init.js'
export default {
props: {
// 接受的文件类型, 可选值为all media image file video
// 鎺ュ彈鐨勬枃浠剁被鍨? 鍙€夊€间负all media image file video
accept: {
type: String,
default: uni.$u.props.upload.accept
},
// 图片或视频拾取模式,当accept为image类型时设置capture可选额外camera可以直接调起摄像头
// 鍥剧墖鎴栬棰戞嬀鍙栨ā寮忥紝褰揳ccept涓篿mage绫诲瀷鏃惰缃甤apture鍙€夐澶朿amera鍙互鐩存帴璋冭捣鎽勫儚澶?
capture: {
type: [String, Array],
default: uni.$u.props.upload.capture
},
// 当accept为video时生效,是否压缩视频,默认为true
// 褰揳ccept涓簐ideo鏃剁敓鏁堬紝鏄惁鍘嬬缉瑙嗛锛岄粯璁や负true
compressed: {
type: Boolean,
default: uni.$u.props.upload.compressed
},
// 当accept为video时生效,可选值为back或front
// 褰揳ccept涓簐ideo鏃剁敓鏁堬紝鍙€夊€间负back鎴杅ront
camera: {
type: String,
default: uni.$u.props.upload.camera
},
// 当accept为video时生效,拍摄视频最长拍摄时间,单位秒
// 褰揳ccept涓簐ideo鏃剁敓鏁堬紝鎷嶆憚瑙嗛鏈€闀挎媿鎽勬椂闂达紝鍗曚綅绉?
maxDuration: {
type: Number,
default: uni.$u.props.upload.maxDuration
},
// 上传区域的图标,只能内置图标
// 涓婁紶鍖哄煙鐨勫浘鏍囷紝鍙兘鍐呯疆鍥炬爣
uploadIcon: {
type: String,
default: uni.$u.props.upload.uploadIcon
},
// 上传区域的图标的颜色,默认
// 涓婁紶鍖哄煙鐨勫浘鏍囩殑棰滆壊锛岄粯璁?
uploadIconColor: {
type: String,
default: uni.$u.props.upload.uploadIconColor
},
// 是否开启文件读取前事件
// 鏄惁寮€鍚枃浠惰鍙栧墠浜嬩欢
useBeforeRead: {
type: Boolean,
default: uni.$u.props.upload.useBeforeRead
},
// 读取后的处理函数
// 璇诲彇鍚庣殑澶勭悊鍑芥暟
afterRead: {
type: Function,
default: null
},
// 读取前的处理函数
// 璇诲彇鍓嶇殑澶勭悊鍑芥暟
beforeRead: {
type: Function,
default: null
},
// 是否显示组件自带的图片预览功能
// 鏄惁鏄剧ず缁勪欢鑷甫鐨勫浘鐗囬瑙堝姛鑳?
previewFullImage: {
type: Boolean,
default: uni.$u.props.upload.previewFullImage
},
// 最大上传数量
// 鏈€澶т笂浼犳暟閲?
maxCount: {
type: [String, Number],
default: uni.$u.props.upload.maxCount
},
// 是否启用
// 鏄惁鍚敤
disabled: {
type: Boolean,
default: uni.$u.props.upload.disabled
},
// 预览上传的图片时的裁剪模式,和image组件mode属性一致
// 棰勮涓婁紶鐨勫浘鐗囨椂鐨勮鍓ā寮忥紝鍜宨mage缁勪欢mode灞炴€т竴鑷?
imageMode: {
type: String,
default: uni.$u.props.upload.imageMode
},
// 标识符,可以在回调函数的第二项参数中获取
// 鏍囪瘑绗︼紝鍙互鍦ㄥ洖璋冨嚱鏁扮殑绗簩椤瑰弬鏁颁腑鑾峰彇
name: {
type: String,
default: uni.$u.props.upload.name
},
// 所选的图片的尺寸, 可选值为original compressed
// 鎵€閫夌殑鍥剧墖鐨勫昂瀵? 鍙€夊€间负original compressed
sizeType: {
type: Array,
default: uni.$u.props.upload.sizeType
},
// 是否开启图片多选,部分安卓机型不支持
// 鏄惁寮€鍚浘鐗囧閫夛紝閮ㄥ垎瀹夊崜鏈哄瀷涓嶆敮鎸?
multiple: {
type: Boolean,
default: uni.$u.props.upload.multiple
},
// 是否展示删除按钮
// 鏄惁灞曠ず鍒犻櫎鎸夐挳
deletable: {
type: Boolean,
default: uni.$u.props.upload.deletable
},
// 文件大小限制,单位为byte
// 鏂囦欢澶у皬闄愬埗锛屽崟浣嶄负byte
maxSize: {
type: [String, Number],
default: uni.$u.props.upload.maxSize
},
// 显示已上传的文件列表
// 鏄剧ず宸蹭笂浼犵殑鏂囦欢鍒楄〃
fileList: {
type: Array,
default: uni.$u.props.upload.fileList
},
// 上传区域的提示文字
// 涓婁紶鍖哄煙鐨勬彁绀烘枃瀛?
uploadText: {
type: String,
default: uni.$u.props.upload.uploadText
},
// 内部预览图片区域和选择图片按钮的区域宽度
// 鍐呴儴棰勮鍥剧墖鍖哄煙鍜岄€夋嫨鍥剧墖鎸夐挳鐨勫尯鍩熷搴?
width: {
type: [String, Number],
default: uni.$u.props.upload.width
},
// 内部预览图片区域和选择图片按钮的区域高度
// 鍐呴儴棰勮鍥剧墖鍖哄煙鍜岄€夋嫨鍥剧墖鎸夐挳鐨勫尯鍩熼珮搴?
height: {
type: [String, Number],
default: uni.$u.props.upload.height
},
// 是否在上传完成后展示预览图
// 鏄惁鍦ㄤ笂浼犲畬鎴愬悗灞曠ず棰勮鍥?
previewImage: {
type: Boolean,
default: uni.$u.props.upload.previewImage