Notice: Undefined index: public in /www/wwwroot/cuixinxin.cn/wp-content/plugins/wpjam-basic/includes/class-wpjam-core.php on line 137

Notice: Undefined index: public in /www/wwwroot/cuixinxin.cn/wp-content/plugins/wpjam-basic/includes/class-wpjam-core.php on line 137
使用uview-plus遇到的一些问题! 卖坚果的怪叔叔
卖坚果的怪叔叔 卖坚果的怪叔叔
  • 首页
  • 生活
  • 技术
  • 记录
  • 工具箱
  • 关于我
首页 › 技术 › 使用uview-plus遇到的一些问题!

使用uview-plus遇到的一些问题!

坚果大叔
2025-09-19 20:21:59技术阅读 5,354

一开始使用的版本是3.3.64,因为看官网文档中有些组件是3.4.68才支持的,之前的版本没有这个功能,然后就把版本升级了一下,结果带来了以为问题。因为在官方文档中并没有说明,所以如果有遇到相同问题的可以参考解决一下。

第一个问题css语法问题

因为项目中开了TS严格模式,在编译成app的时候提示如下CSS语法错误,但是只是警告不是ERROR。实际上是可以忽略的。

使用uview-plus遇到的一些问题!-卖坚果的怪叔叔

20:41:29.534     node_modules\uview-plus\components\u-coupon\u-coupon.vue 111:9  root stylesheet 
20:41:29.534 DEPRECATION WARNING: Sass's behavior for declarations that appear after nested 
20:41:29.534 rules will be changing to match the behavior specified by CSS in an upcoming 
20:41:29.534 version. To keep the existing behavior, move the declaration above the nested

上面的width:100%位置会导致CSS检查报错,将它移动到最顶端就可以了。

第二个问题:富文本组件的事件丢失

在上一个版本中用的好好的,更新最新版本后,点击图片事件丢失。出现如下emit错误。查看源码后发现判断更改,注册事件变动。emit暴露方法旨在鸿蒙中生效,H5上没有用了。

解决办法

修改注册判断以及将emit事件暴露出去。

     this.$nextTick(() => {
-      // 修复可能导致死循环的问题
-      for (this.root = this?.$parent; this.root && this.root?.$options.name !== 'mp-html'; this.root = this.root?.$parent);
+      for (this.root = this.$parent; this.root.$options.name !== 'u-parse'; this.root = this.root.$parent);
     })
   // #ifdef H5 || APP-PLUS
   node.attrs.src = node.attrs.src || node.attrs['data-src']
   // #endif
+  console.log('imgTap', node.attrs)
+  this.root.$emit('imgTap', node.attrs)
   // #ifndef APP-HARMONY
   this.root.$emit('imgtap', node.attrs)
   // #endif

第三个问题,上传组件限制只能上传9张

在使用上传组件的时候发现一个问题,只能上传9张,不管是app还是H5上面。之前没有发现是因为在微信中打开H5系统的选择图片最多选择9张。后来用H5就算你选了20张也只给你上传9张。一开始还以为是手机系统原因。然后就去看了源码,如下:

uni.chooseImage({
    count: multiple ? Math.min(maxCount, 9) : 1,
    sourceType: capture,
    sizeType,
    success: (res) => resolve(formatImage(res)),
    fail: reject
})

当你设置了可以多选的时候,默认取始终取的是最小值9,大无语呀!所以如果你需要上传实际选择的图片可以直接把macCount做为参数就行了。

以上问题在修改后通过patch补丁的方式来进行修改,如果有遇到相同问题的小伙伴可以使用同样是解决方式!

pnpm patch的工作流程

1. 生成临时目录
pnpm patch uview-plus

#输出类似:这个目录是 uview-plus的完整副本,可以直接修改。
You can now edit the following folder: /tmp/abc123
2. 修改代码
cd /tmp/abc123
code components/u-coupon/u-coupon.vue# 修改文件
3. 生成补丁
pnpm patch-commit /tmp/abc123

# 在 patches/目录下生成补丁文件(如 uview-plus@3.5.41.patch)
# 自动在 package.json中添加 pnpm.patchedDependencies配置
4. 重新安装验证
rm -rf node_modules
pnpm install
赞赏 赞(1)
Nuxt3中的水合是什么?以及使用中的一些总结!
上一篇
我用Trae做了一个一键同步热点要闻到公众号的工具
下一篇
在小程序中查看

这是个😊,挣点服务器费用😜

评论已关闭

热门文章
永远的曼巴
AntDesign Table Radio点击死循环导致页面卡死
再见2017
JavaScript之继承(未完待续)
重学JavaScript之匿名函数
3月已到月底,今年已过四分之一!
专题标签
agent (1) CSS (15) dom (1) Es6入门系列 (14) Git (3) html (1) iview (1) JavaScript (9) js (4) Lif (1) Node (4) pyecharts (1) Python (10) ref (1) scriptable (1) Skill (1) vsCode (1) vue (4) wordpress (2) 三月 (1) 上海 (1) 假期 (1) 其他分享 (3) 前端两三问 (15) 古镇 (1) 外滩 (1) 对象 (1) 小程序 (5) 年度总结 (6) 年终总结 (1) 微信机器人 (4) 打字机 (1) 技术 (1) 日常问题 (8) 日常问题记录 (1) 春天 (2) 服务器 (2) 海族馆 (1) 生活 (8) 网上国网 (1) 记录 (3) 通勤 (1) 重学JavaScript (11) 面试题 (10) 🌸 (1)
什么是Agent?
2026-08-15 23:49:12
491 0 2
什么是 Skill?
2026-08-12 21:32:42
412 1 0
失业在家,我给小朋友做了一个练字小程序!
2026-08-07 16:21:52
814 10 1
上线8年,15万用户的小程序,一共赚了多少钱?
2026-05-30 18:01:24
4,793 4 0
1
  • 1
博主

一位佛系的前端开发者,略通摄影,乐于尝试新事物,热衷于美食。

友链
故事胶片
公众号
坚果大叔 执行上下文 卖坚果的怪叔叔 Dacking
Copyright © 2017-2026 卖坚果的怪叔叔

开往-友链接力

萌ICP备20230818号

苏ICP备18048410号-3
  • 首页
  • 生活
  • 技术
  • 记录
  • 工具箱
  • 关于我
# CSS # # JavaScript # # vue # # 微信 # # 生活 #
坚果大叔
345
文章
171
评论
432
喜欢