微信小程序开发学习笔记《10》页面导航

微信小程序开发学习笔记《10》页面导航

博主正在学习微信小程序开发,希望记录自己学习过程同时与广大网友共同学习讨论。导航 官方文档

一、介绍

1. 什么是页面导航

页面导航指的是页面之间的相互跳转。例如,浏览器中实现页面导航的方式有如下两种:

  1. <a>链接
  2. location.href

2.小程序中实现页面导航的两种方式
声明式导航

在页面上声明一个导航组件

通过点击组件实现
页面跳转编程式导航

调用小程序的导航APl,实现页面的跳转

二、声明式导航

2.1 导航到tabBar页面

tabBar页面指的是被配置为tabBar的页面。

在使用组件跳转到指定的tabBar页面时,需要指定url属性和open-type属性,其中:

  1. url表示要跳转的页面的地址,必须以/开头
  2. open-type表示跳转的方式,必须为switchTab
java 复制代码
<navigator url="/pages/message/message" open-type= "switchTab">导航到消息页面</navigator>

2.2 非tabBar页面指的是没有被配置为tabBar的页面。

在使用组件跳转到普通的非tabBar页面时,则需要指定url属性和 open-type属性,其中:

  1. url表示要跳转的页面的地址,必领以/开头
  2. open-type表示跳转的方式,为navigate(不用写,因为默认为navigate)
java 复制代码
<navigator url="/pages/info/info" open-type="navigate">导航到info页面</navigator>

2.3 后退导航

如果要后退到上一页面或多级页面,则需要指定open-type属性和 delta属性,其中:

  1. open-type的值必须是navigateBack,表示要进行后退导航
  2. delta的值必须是数字,表示要后退的层级
    示例代码如下:
java 复制代码
<navigator open-type='navigateBack' delta='1'>返回上一页</navigator>

如果要后退两个层级,只需要把delta='2',更多层级同理。

其实后退一个层级可以不用写delta='1',默认为1。

三、编程式导航

3.1 导航到tabBar页面

调用wx.switchTab(0bject object)方法 ,可以跳转到tabBar页面。其中 Object参数对象的属性列表如下:

其中只有url是必填的。

示例:

3.2 导航到非tabBar页面

调用**wx.navigateTo(0bject object)**方法,可以跳转到非tabBar的页面。其中 Object参数对象的属性列表如下:

代码示例:

3.3 后退导航

调用**wx.navigateBack(Object object)**方法,可以返回上一页面或多级页面。其中 Object 参数对象可选的属性列表如下:

示例:

如果是需要后退多层级的话;

java 复制代码
  gotoBack1(){
      wx.navigateBack({
      	delta:3
      })
  },

以上学习笔记都是博主在B站学习黑马程序员课程时的学习笔记,如果有什么问题,烦请联系我删除。

相关推荐
寒月小酒8 小时前
第五章 生成集成 和第六章 RAG评估(all-in-rag学习)
数据库·学习
摇滚侠8 小时前
《RocketMQ 官网》阅读笔记 RocketMQ 消息队列 MessageQueue 消息 Messagege
笔记·rocketmq
魔城烟雨8 小时前
从零开始学习betaflight《5-坐标系》
学习
笔夏8 小时前
【移芯平台CAT1模组】烧写固件
stm32·单片机·学习
憧憬成为java架构高手的小白8 小时前
黑马八股--spring框架学习
java·学习·spring
Ztt6666666668 小时前
【无标题】
经验分享·笔记·其他·百度·微信公众平台
依然范特东9 小时前
强化学习笔记4--TD算法
笔记
AOwhisky9 小时前
Linux(CentOS)系统管理入门笔记(第十五期)——文件系统与存储管理(上篇):设备识别、挂载与文件查找
linux·运维·笔记·centos·文件系统
茯苓gao10 小时前
嵌入式开发笔记:QSerialPort 完整使用指南——从基础 API 到工程实战
笔记·嵌入式硬件·qt·学习
一起努力啊~10 小时前
DataWhale组队学习笔记--llm-algo-leetcode(七)
笔记·学习·llm