由于我们项目的 tabbar 以外的页面,每次进入都会加载,而 tabbar 界面不会,所以有了疑问:所有页面都是 webview 显示的吗?
经过查阅,查到安卓机的识别原生元素的截图
tabbar 和 navbar 是原生的,页面内容都是 webview
所以这就是为什么 tabbar 和 navbar 有着各种限制
那这个缓存问题就不是原生页面的问题
根据微信文档
小程序框架以栈的形式维护了当前的所有页面
所以在某一 tab 开始进入页面后,加载每一级页面,返回时销毁每一级
所以 tab 以外的页面第二次进入都会重新加载
而 tabbar 页面点击切换不会
根据官方社区
以及官方文档
点击切换 tab 就是使用的 wx.switchTab 的逻辑
跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面
所以 tab 页面是不会关闭的,所以就不会重新加载