今天学习了小程序实现路由跳转,我在操作的时候在控制台出现以下错误信息。
翻译过来的意思是:(承诺中)微程序错误{“errMsg”:“n”avigateTo:故障can未导航到选项卡页“}对象
问题原因:
经过查阅资料,知道使用navigateTo路由跳转方式,保留当前页面,跳转到应用内的某个页面。但是不能跳到 tabbar 页面。
解决办法:只需在js文件的点击事件中,配置跳转的url地址与tabbar中的跳转地址不一样就ok.
我就简单说一下我用navigateTo方式实现的小程序路由跳转过程
1.触发一个点击事件
<view bindtap="toDetail"></view>
2.在js文件中设置路由跳转
// 路由跳转
toDetail(){
wx.navigateTo({
url:"/pages/detail/detail"
})
},
navigateTo路由跳转方式可以实现历史回退
大家也可以去了解一下其他的路由跳转方式
其他路由的一些简单介绍:
wx.navigateTo() 带历史回退,不能跳转到tabbar页面
wx.redirectTo() 不保留历史,跳转到另一个页面,不能返回到上一页面
//相当于vue中的路由跳转方式this.$router.replace()
wx.switchTab() 只跳转到tabBar页面,不带回退
wx.reLaunch() 即能跳转到tabBar页面,也能跳转到非tabBar页面,不带历史回退
关于路由详解可查阅官方文档:https://developers.weixin.qq.com/miniprogram/dev/api/route/wx.navigateTo.html