uni-app 最新版本HBuilderX中 App.vue 的 onshow() 方法不会在每个页面中触发 只会在第一次进入项目时触发
uni-app 最新版本HBuilderX中 App.vue 的 onshow() 方法不会在每个页面中触发 只会在第一次进入项目时触发
| 开发环境 | 版本号 | 项目创建方式 |
|---|---|---|
| Windows | 20H2 | HbuilderX |
示例代码:
app.vue 页面
onShow: function(e) {
this.isShowHeaderMixins()
},
methods:{
isShowHeaderMixins(){
//如果在微信小程序或者客户端内时隐藏头部
if (this.globalData.inMini || this.globalData.inApp) {
let appPage = document.querySelector(‘uni-app’);
appPage.className += ’ inapp’
// inapp 是class 在样式中写的隐藏 display:none;
}
},
}
更多关于uni-app 最新版本HBuilderX中 App.vue 的 onshow() 方法不会在每个页面中触发 只会在第一次进入项目时触发的实战教程也可以访问 https://www.itying.com/category-93-b0.html
更多关于uni-app 最新版本HBuilderX中 App.vue 的 onshow() 方法不会在每个页面中触发 只会在第一次进入项目时触发的实战教程也可以访问 https://www.itying.com/category-93-b0.html
在 uni-app 中,App.vue 的 onShow 生命周期确实只在应用首次启动或从后台切换到前台时触发,而不是在每个页面切换时触发。这是框架的预期行为。
你的代码逻辑更适合放在页面级组件的 onShow 中,或者使用全局监听方案:
- 页面级监听:在每个页面的
onShow中调用isShowHeaderMixins方法 - 全局事件总线:通过
uni.$on和uni.$emit实现跨页面通信 - Vuex 状态管理:结合
watch监听全局状态变化
对于你的隐藏头部需求,建议采用条件编译 + 页面级监听的方式:
// 在页面中
onShow() {
this.$scope.isShowHeaderMixins()
}

