微信小程序页面路由知识点总结-小程序开发

首页 2024-07-09 07:43:39

本文为您带来了微信小程序的相关知识,主要介绍了页面路由的相关内容。路由是指从源到目的地决定端到端路径的网络范围的过程。让我们来看看,我希望它能对你有所帮助。

【相关学习推荐:小程序学习教程】

路由是什么?
路由(routing)它是指在分组从源到目的地时,决定端到端路径的网络范围的过程。我们可以理解微信小程序页面路由的规则,根据路由规则(路径)从一个页面跳转到另一个页面。
1.哪些会触发页面跳转?
  1. 小程序启动,第一页初始化
  2. 跳转新页面,调用wx.navigateTo 或者
  3. 重定向页面,调用wx.redirectTo 或者
  4. 返回页面,调用wx.navigateBack ,回到页面左上角的按钮
  5. wx.tabar页面切换实现tabarwitchtab

Tips: 所有页面都必须在应用程序中使用.在json中注册,比如

{
????"pages":?[
????????"pages/index/index",
????????"pages/classification/classification",
????????"pages/start/start",
????????"pages/detail/detail",??
????]
}
二、在微信小程序中实现页面路由的几种方式
  1. wx.navigateTo,保留当前页面,跳转到应用程序中的页面,但不能跳转到 tabbar 页面
wx.navigateTo({
??url:?'pages/detail/detail',
??success:?function(res)?{},
??...
})
  1. wx.redirectTo,关闭当前页面,跳转到应用程序中的某个页面,但不允许跳转到 tabbar 页面
wx.redirectTo({
??url:?'pages/detail/detail',
??success:function(res){},
??...
})
  1. 组件跳转模式
<navigator>跳转</navigator>
  1. wx.navigateBack返回到上一页
wx.navigateBack({
	delta:?1,
})

Tips: delta在1时返回上一页,在2时返回上一页,以此类推;如果dalta大于已打开的页面总数,则返回主页。返回后,元界面将被销毁

  1. wx.switchTab跳转到 tabBar 关闭页面,关闭所有其他非所有页面 tabBar 页面
    app.json:
{
??"tabBar":?{
????"list":?[{
????????"pagePath":?"pages/index/index",
????????"text":?"首页",
????},
????{
????????"pagePath":?"pages/car/car",
????????"text":?"购物车",
??????},
???...
??}
}

index.js:

wx.switchTab({
??url:?'pages/car/car'
})
三、小程序路由实现原则

通过自己实现的栈(先进先出)来管理小程序路由。

当我们通过wx时.navigateto或从A页跳转到B页。路由栈的变化是这样的。

当使用wx时,路由栈一开始只有页面a.navigateto跳转后,页面B推入路由栈并显示到界面,页面A隐藏。

当我们使用wx时.navigateBack返回时

那么wx.redirecttowx.navigateto有什么区别?

假设现在已经在二级页面B上,我们使用wx.redirectto跳转到C页面,过程是这样的。

比如现在已经在二级页面B上了,我们用wx。.redirectto跳转到C页面,过程是这样的。
[外链图片转存中...(img-mkPnbKug-1650431194878)]

页面B将被pop发布,然后C页面将push进入堆栈。此时,堆栈中只有两个页面。

【相关学习推荐:小程序学习教程】

以上是微信小程序页面路由知识点总结的详细内容,请关注其他相关文章!


p