3***@qq.com
3***@qq.com
  • 发布:2019-07-02 11:09
  • 更新:2023-10-25 14:36
  • 阅读:4037

第一次进首页 subNVue 子窗体关闭正常,然后用uni.reLaunch再次跳转到首页后,hide方法关闭不了

分类:uni-app

subNVue 子窗体 进入B页面 可以打开子窗体, 也可以关闭子窗体, 返回到A页面,然后在进入B页面,可以打开子窗体,但是 不能关闭子窗体,, 请问这是为什么???

2019-07-02 11:09 负责人:jxtian 分享
已邀请:
3***@qq.com

3***@qq.com - 90采坑王

我也碰到这样的问题,应该官方bug ,跳转到带subnvue的页面会新建一个subnvue 然后上一个页面的不会释放,然后又创建一个subnvue

  • DearZxb

    大佬,你解决了没,我也遇到同样的问题了~

    2021-06-25 09:53

ZGH0709

ZGH0709

测试官方 hello uni-app 示例中, API -> 界面 -> 原生子窗体 是否有该问题?检查写法,如果仍有问题,请上传可复现 demo。

  • 雨夜敬清秋

    上传了demo,https://ask.dcloud.net.cn/question/88747

    2020-02-12 10:51

1***@qq.com

1***@qq.com

楼主解决了没

2***@qq.com

2***@qq.com

请问解决了吗?我的是从a进入c子窗体一切正常,b进入c子窗体可以弹出,但是没有遮罩层,点击关闭按钮可以执行关闭按钮的其他逻辑,但是子窗体不关闭

我吃柠檬

我吃柠檬 - .....

我也遇到了不能关闭的问题,第一次进首页子窗体关闭正常,然后用uni.reLaunch再次跳转到首页后,就关闭不了了

  • 2***@qq.com

    这个问题解决了吗

    2021-01-28 14:15

雨夜敬清秋

雨夜敬清秋

我也遇到了这样都问题,切换页面后,点击mask无法回收子窗体,但是通过子窗体的实例方法 hide 可以关闭

1***@qq.com

1***@qq.com

我也是,官方没有解决,一年了

8***@qq.com

8***@qq.com - lisp

请问解决了吗,今天也发现了这个问题,两个页面共用一个subnvue,先创建的页面能关闭,后创建的页面不能关闭

  • 8***@qq.com

    最后的解决办法是,两个页面不能共用一个subNvue,将共用的这个复制一份出来,起不同的ID,分别弹出,分别关闭就可以了

    2020-07-27 10:41

[已删除]

[已删除]

人找资源(外包),前端,熟悉uni、vue,联系wx:Florida_kang

y***@163.com

y***@163.com

现在还有这个问题。。。

[已删除]

[已删除]

解决没有?现在还是有这个问题

1***@qq.com

1***@qq.com - 开发者

遇到同样的问题了,楼主解决了吗?

2***@qq.com

2***@qq.com

已解决了,只要在destroyed里写隐藏的方法就可以将其关闭隐藏了

l***@126.com

l***@126.com - 码农

关闭加这样一行代码subNVue.close

  • 1***@qq.com

    官方好想没有 close 这个方法吧

    2021-04-06 17:54

Anil993421281

Anil993421281

在子窗体页面的生命周期方法内加上 subNVue.hide() 可解决。 子窗体中用hide方法。
子窗体获取实例 const subNVue = uni.getCurrentSubNVue();

1***@163.com

1***@163.com - 逐渐迷失自我的程序员,直到找到方向后才开始崭露头角

解决了,这不是官方bug,是自己使用有误,在跳转uni.reLaunch的时候调用了多个uni.reLaunch,调用一次不会出现subNvue这个问题
在跳转关闭所有页面加这个代码

                      var jump = uni.getStorageSync('jump')  
                        if (!jump) {  
                            uni.reLaunch({  
                                url: '/pages/login/login'  
                            })  
                        }  
                      uni.setStorageSync('jump',true)

在登录页onLoad生命周期

uni.removeStorageSync({key: 'jump'});
xBug

xBug

两年多过去了,这bug都还没修好!
你们是开发机还没生产好吗?

星河12

星河12

还是有问题,退出登录的场景,点击退出登录弹出子窗体,然后点击退出,调用reLaunch跳转到登录页面,然后登录时使用 reLaunch 跳回首页,再次点击退出,弹出子窗体提示框,点击取消这个时候该隐藏弹框,但是只隐藏了遮罩。

image

tuonioooo

tuonioooo

这评论回复 为什么最新的消息 在最下面。。。

菜鸟驿站111

菜鸟驿站111

关闭的时候加上这个,可以解决
uni.getSubNVueById('popover1').hide();
// 获取所有Webview窗口
var wvs = plus.webview.all();
for (var i = 0; i < wvs.length; i++) {
if (wvs[i].id.indexOf('popover') != -1) {
wvs[i].hide()
}
}

要回复问题请先登录注册