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,113 +1,114 @@
import '@/common/uview-init.js'
export default {
props: {
// 是否打开组件
// 鏄惁鎵撳紑缁勪欢
show: {
type: Boolean,
default: uni.$u.props.datetimePicker.show
},
// 是否展示顶部的操作栏
// 鏄惁灞曠ず椤堕儴鐨勬搷浣滄爮
showToolbar: {
type: Boolean,
default: uni.$u.props.datetimePicker.showToolbar
},
// 绑定值
// 缁戝畾鍊?
value: {
type: [String, Number],
default: uni.$u.props.datetimePicker.value
},
// 顶部标题
// 椤堕儴鏍囬
title: {
type: String,
default: uni.$u.props.datetimePicker.title
},
// 展示格式,mode=date为日期选择,mode=time为时间选择,mode=year-month为年月选择,mode=datetime为日期时间选择
// 灞曠ず鏍煎紡锛宮ode=date涓烘棩鏈熼€夋嫨锛宮ode=time涓烘椂闂撮€夋嫨锛宮ode=year-month涓哄勾鏈堥€夋嫨锛宮ode=datetime涓烘棩鏈熸椂闂撮€夋嫨
mode: {
type: String,
default: uni.$u.props.datetimePicker.mode
},
// 可选的最大时间
// 鍙€夌殑鏈€澶ф椂闂?
maxDate: {
type: Number,
// 最大默认值为后10年
// 鏈€澶ч粯璁ゅ€间负鍚?0骞?
default: uni.$u.props.datetimePicker.maxDate
},
// 可选的最小时间
// 鍙€夌殑鏈€灏忔椂闂?
minDate: {
type: Number,
// 最小默认值为前10年
// 鏈€灏忛粯璁ゅ€间负鍓?0骞?
default: uni.$u.props.datetimePicker.minDate
},
// 可选的最小小时,仅mode=time有效
// 鍙€夌殑鏈€灏忓皬鏃讹紝浠卪ode=time鏈夋晥
minHour: {
type: Number,
default: uni.$u.props.datetimePicker.minHour
},
// 可选的最大小时,仅mode=time有效
// 鍙€夌殑鏈€澶у皬鏃讹紝浠卪ode=time鏈夋晥
maxHour: {
type: Number,
default: uni.$u.props.datetimePicker.maxHour
},
// 可选的最小分钟,仅mode=time有效
// 鍙€夌殑鏈€灏忓垎閽燂紝浠卪ode=time鏈夋晥
minMinute: {
type: Number,
default: uni.$u.props.datetimePicker.minMinute
},
// 可选的最大分钟,仅mode=time有效
// 鍙€夌殑鏈€澶у垎閽燂紝浠卪ode=time鏈夋晥
maxMinute: {
type: Number,
default: uni.$u.props.datetimePicker.maxMinute
},
// 选项过滤函数
// 閫夐」杩囨护鍑芥暟
filter: {
type: [Function, null],
default: uni.$u.props.datetimePicker.filter
},
// 选项格式化函数
// 閫夐」鏍煎紡鍖栧嚱鏁?
formatter: {
type: [Function, null],
default: uni.$u.props.datetimePicker.formatter
},
// 是否显示加载中状态
// 鏄惁鏄剧ず鍔犺浇涓姸鎬?
loading: {
type: Boolean,
default: uni.$u.props.datetimePicker.loading
},
// 各列中,单个选项的高度
// 鍚勫垪涓紝鍗曚釜閫夐」鐨勯珮搴?
itemHeight: {
type: [String, Number],
default: uni.$u.props.datetimePicker.itemHeight
},
// 取消按钮的文字
// 鍙栨秷鎸夐挳鐨勬枃瀛?
cancelText: {
type: String,
default: uni.$u.props.datetimePicker.cancelText
},
// 确认按钮的文字
// 纭鎸夐挳鐨勬枃瀛?
confirmText: {
type: String,
default: uni.$u.props.datetimePicker.confirmText
},
// 取消按钮的颜色
// 鍙栨秷鎸夐挳鐨勯鑹?
cancelColor: {
type: String,
default: uni.$u.props.datetimePicker.cancelColor
},
// 确认按钮的颜色
// 纭鎸夐挳鐨勯鑹?
confirmColor: {
type: String,
default: uni.$u.props.datetimePicker.confirmColor
},
// 每列中可见选项的数量
// 姣忓垪涓彲瑙侀€夐」鐨勬暟閲?
visibleItemCount: {
type: [String, Number],
default: uni.$u.props.datetimePicker.visibleItemCount
},
// 是否允许点击遮罩关闭选择器
// 鏄惁鍏佽鐐瑰嚮閬僵鍏抽棴閫夋嫨鍣?
closeOnClickOverlay: {
type: Boolean,
default: uni.$u.props.datetimePicker.closeOnClickOverlay
},
// 各列的默认索引
// 鍚勫垪鐨勯粯璁ょ储寮?
defaultIndex: {
type: Array,
default: uni.$u.props.datetimePicker.defaultIndex