1***@163.com
1***@163.com
  • 发布:2025-01-02 18:19
  • 更新:2025-01-08 14:25
  • 阅读:154

【报Bug】HbuilderX 4.44版本,nvue页面添加subNVues子页面,无法通过hide或close方法隐藏或关闭

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: 10

HBuilderX类型: 正式

HBuilderX版本号: 4.44

手机系统: iOS

手机系统版本号: iOS 17

手机厂商: 苹果

手机机型: iPhone XR

页面类型: nvue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

示例代码:

pages.json页面
···
"app-plus": {
"subNVues": [{
"id": "bannerPopup",
"path": "pages/travel/subnvue/bannerPopup",
"type": "popup",
"mask": "rgba(0,0,0,0)",
"style": {
"background": "transparent",
"margin": "auto"
}
}]
}
···

首页nvue页面
···
const subNVue = uni.getSubNVueById('bannerPopup');
subNVue.show('zoom-fade-in', 500);
···

bannerPopup.nvue页面
···
const subNVue = uni.getCurrentSubNVue();
subNVue.hide('fade-out', 500);
// subNVue.close();
···

操作步骤:

首页为nvue页面,并且配置了subNVues弹框,进入首页执行弹出该弹框,在弹框内部执行关闭功能

预期结果:

能正常关闭subnvue弹框

实际结果:

执行该方法没有反应

bug描述:

首页用到了地图,使用nvue页面,为了覆盖底下tabbar,在app-plus下的subNVues配置了遮罩弹框页面,之前的版本都可以通过subNVue.hide或subNVue.close方法可以关闭或隐藏遮罩,更新到4.44版本后,触发该方法没有反应。

另外,在IOS旁白模式下,如果使用subNVue.hide方法,之前的版本虽然可以隐藏subNVue页面,但是无法选中页面的元素,只有使用subNVue.close方法,才能选择页面原生

2025-01-02 18:19 负责人:无 分享
已邀请:
DCloud_heavensoft

DCloud_heavensoft

你之前是什么版本?能不能提个复现工程?

安卓是否正常?

1***@163.com

1***@163.com (作者)

测试了一下,是条件编译有问题,我之前用的是hbuildX4.36,#ifdef APP-IOS 和 #ifdef APP-ANDROID 这两个可以正常编译,现在升级为新版本后,无法正常编译,没有执行条件里面的代码> ;

const subNVue = uni.getCurrentSubNVue();  

// #ifdef APP-IOS  
subNVue.close();  
// #endif  

// #ifdef APP-ANDROID  
subNVue.hide('fade-out', 500);  
// #endif

另外就是IOS的旁边模式下,使用subNVue.hide()方法,虽然关闭了弹框,但是旁白模式下的选中区域还是在subNVue弹框那边,现在是只能通过subNVue.close()来解决,但是使用了subNVue.close()就无法再次打开弹框,这一块有解决办法吗?

要回复问题请先登录注册