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,81 +1,82 @@
import '@/common/uview-init.js'
export default {
props: {
// 搜索框形状,round-圆形,square-方形
// 鎼滅储妗嗗舰鐘讹紝round-鍦嗗舰锛宻quare-鏂瑰舰
shape: {
type: String,
default: uni.$u.props.search.shape
},
// 搜索框背景色,默认值#f2f2f2
// 鎼滅储妗嗚儗鏅壊锛岄粯璁ゅ€?f2f2f2
bgColor: {
type: String,
default: uni.$u.props.search.bgColor
},
// 占位提示文字
// 鍗犱綅鎻愮ず鏂囧瓧
placeholder: {
type: String,
default: uni.$u.props.search.placeholder
},
// 是否启用清除控件
// 鏄惁鍚敤娓呴櫎鎺т欢
clearabled: {
type: Boolean,
default: uni.$u.props.search.clearabled
},
// 是否自动聚焦
// 鏄惁鑷姩鑱氱劍
focus: {
type: Boolean,
default: uni.$u.props.search.focus
},
// 是否在搜索框右侧显示取消按钮
// 鏄惁鍦ㄦ悳绱㈡鍙充晶鏄剧ず鍙栨秷鎸夐挳
showAction: {
type: Boolean,
default: uni.$u.props.search.showAction
},
// 右边控件的样式
// 鍙宠竟鎺т欢鐨勬牱寮?
actionStyle: {
type: Object,
default: uni.$u.props.search.actionStyle
},
// 取消按钮文字
// 鍙栨秷鎸夐挳鏂囧瓧
actionText: {
type: String,
default: uni.$u.props.search.actionText
},
// 输入框内容对齐方式,可选值为 left|center|right
// 杈撳叆妗嗗唴瀹瑰榻愭柟寮忥紝鍙€夊€间负 left|center|right
inputAlign: {
type: String,
default: uni.$u.props.search.inputAlign
},
// input输入框的样式,可以定义文字颜色,大小等,对象形式
// input杈撳叆妗嗙殑鏍峰紡锛屽彲浠ュ畾涔夋枃瀛楅鑹诧紝澶у皬绛夛紝瀵硅薄褰㈠紡
inputStyle: {
type: Object,
default: uni.$u.props.search.inputStyle
},
// 是否启用输入框
// 鏄惁鍚敤杈撳叆妗?
disabled: {
type: Boolean,
default: uni.$u.props.search.disabled
},
// 边框颜色
// 杈规棰滆壊
borderColor: {
type: String,
default: uni.$u.props.search.borderColor
},
// 搜索图标的颜色,默认同输入框字体颜色
// 鎼滅储鍥炬爣鐨勯鑹诧紝榛樿鍚岃緭鍏ユ瀛椾綋棰滆壊
searchIconColor: {
type: String,
default: uni.$u.props.search.searchIconColor
},
// 输入框字体颜色
// 杈撳叆妗嗗瓧浣撻鑹?
color: {
type: String,
default: uni.$u.props.search.color
},
// placeholder的颜色
// placeholder鐨勯鑹?
placeholderColor: {
type: String,
default: uni.$u.props.search.placeholderColor
},
// 左边输入框的图标,可以为uView图标名称或图片路径
// 宸﹁竟杈撳叆妗嗙殑鍥炬爣锛屽彲浠ヤ负uView鍥炬爣鍚嶇О鎴栧浘鐗囪矾寰?
searchIcon: {
type: String,
default: uni.$u.props.search.searchIcon
@@ -84,32 +85,32 @@ export default {
type: [Number, String],
default: uni.$u.props.search.searchIconSize
},
// 组件与其他上下左右元素之间的距离,带单位的字符串形式,如"30px"、"30px 20px"等写法
// 缁勪欢涓庡叾浠栦笂涓嬪乏鍙冲厓绱犱箣闂寸殑璺濈锛屽甫鍗曚綅鐨勫瓧绗︿覆褰㈠紡锛屽"30px"銆?30px 20px"绛夊啓娉?
margin: {
type: String,
default: uni.$u.props.search.margin
},
// 开启showAction时,是否在input获取焦点时才显示
// 寮€鍚痵howAction鏃讹紝鏄惁鍦╥nput鑾峰彇鐒︾偣鏃舵墠鏄剧ず
animation: {
type: Boolean,
default: uni.$u.props.search.animation
},
// 输入框的初始化内容
// 杈撳叆妗嗙殑鍒濆鍖栧唴瀹?
value: {
type: String,
default: uni.$u.props.search.value
},
// 输入框最大能输入的长度,-1为不限制长度(来自uniapp文档)
// 杈撳叆妗嗘渶澶ц兘杈撳叆鐨勯暱搴︼紝-1涓轰笉闄愬埗闀垮害(鏉ヨ嚜uniapp鏂囨。)
maxlength: {
type: [String, Number],
default: uni.$u.props.search.maxlength
},
// 搜索框高度,单位px
// 鎼滅储妗嗛珮搴︼紝鍗曚綅px
height: {
type: [String, Number],
default: uni.$u.props.search.height
},
// 搜索框左侧文本
// 鎼滅储妗嗗乏渚ф枃鏈?
label: {
type: [String, Number, null],
default: uni.$u.props.search.label