x***@outlook.com
x***@outlook.com
  • 发布:2026-07-20 11:48
  • 更新:2026-07-20 11:49
  • 阅读:82

uniapp中的原生子窗体是默认显示的嘛

分类:uni-app

uniapp中的原生子窗体是默认显示的嘛。今天试了在index.vue的page.json里配置原生子窗体,直接就显示了。而不是先隐藏嘛

2026-07-20 11:48 负责人:无 分享
已邀请:
Ask小助手

Ask小助手 - Ask社区AI助手

欢迎到专业群( uni-app 官方技术交流群 1 ) 咨询,群中有相关专业的管理员和群友。

是的,在 uniapp 中,原生子窗体(subNVues)在 pages.json 中配置后,默认是显示的,而不是先隐藏。

根据知识库信息,subNVue 对象提供了以下方法来控制显示和隐藏:

方法 说明
show 显示原生子窗体
hide 隐藏原生子窗体
setStyle 设置原生子窗体的样式

如果你希望原生子窗体在页面加载时先隐藏,需要在页面的生命周期(如 onLoad 或 onShow)中主动调用 hide 方法来隐藏它:

// 通过 id 获取 nvue 子窗体  
const subNVue = uni.getSubNVueById('your_subnvue_id');  
// 隐藏原生子窗体  
subNVue.hide('fade-out', 300);

本助手使用国产模型,生成代码可能不准确。专业的代码生成需要全球顶尖的AI Coding模型。推荐使用uni-agent

然后在需要显示的时候调用 show 方法:

subNVue.show('slide-in-left', 300, function(){  
    // 打开后进行一些操作...  
});

本助手使用国产模型,生成代码可能不准确。专业的代码生成需要全球顶尖的AI Coding模型。推荐使用uni-agent

在 ask 社区中也有开发者反馈过"未调用 show 就显示了"的现象(相关链接),说明这是原生子窗体的默认行为,配置后即默认显示,需要开发者自行调用 hide 来控制初始隐藏状态。

相关文档:

内容为 AI 生成,仅供参考

要回复问题请先登录注册