【微信小程序】-- 页面导航 -- 声明式导航(二十二)

news2024/11/17 23:45:43

请添加图片描述

  • 💌 所属专栏:【微信小程序开发教程】

  • 😀 作  者:我是夜阑的狗🐶

  • 🚀 个人简介:一个正在努力学技术的CV工程师,专注基础和实战分享 ,欢迎咨询!

  • 💖 欢迎大家:这里是CSDN,我总结知识的地方,喜欢的话请三连,有问题请私信 😘 😘 😘

文章目录

  • 前言
  • 一、页面导航
      • 1、什么是页面导航
  • 一、声明式导航
      • 1、导航到 tabBar 页面
      • 2、导航到非 tabBar 页面
      • 3、后退导航
  • 总结


前言

  大家好,又见面了,我是夜阑的狗🐶,本文是专栏【微信小程序开发教程】专栏的第22篇文章;
  今天开始学习微信小程序的第十三天💖💖💖,开启新的征程,记录最美好的时刻🎉,每天进步一点点。
  专栏地址:【微信小程序开发教程】, 此专栏是我是夜阑的狗微信小程序开发过程的总结,希望能够加深自己的印象,以及帮助到其他的小伙伴😉😉。
  如果文章有什么需要改进的地方还请大佬不吝赐教👏👏。


一、页面导航

  前面对学到的模板语法与配置进行了一个总结,通过栗子了解到各个模板语法的使用。接下来就来讲解一下小程序的视图与逻辑–页面导航。话不多说,让我们原文再续,书接上回吧。

请添加图片描述

1、什么是页面导航

  首先来了解一下页面导航的概念。页面导航顾名思义指的就是页面之间的相互跳转,比如,浏览器中实现页面导航的方式有如下两种:

  • <a> 链接
  • location.href

  而在小程序中是不一样的,想要实现页面导航有以下两种方式:

  • 声明式导航

      所谓的声明式导航就是先在页面上声明一个 <navigator> 导航组件,然后通过点击 <navigator> 组件实现页面跳转。

  • 编程式导航

  而编程式导航是直接调用小程序提供的导航 API,实现页面的跳转。

一、声明式导航

  接下来先学习在小程序中声明式导航如何进行跳转。

1、导航到 tabBar 页面

  前面也学到了什么是tabBar ,这里就再来复习一下,所谓的 tabBar 页面指的是被配置为 tabBar 的页面。

  在小程序中,可以通过使用 跳转到指定的 tabBar 页面,需要指定 url 属性和 open-type 属性,如下:

属性说明
url表示要跳转的页面的地址,必须以 / 开头;
open-type表示跳转的方式,必须为 switchTab;

  其中,如果在编程过程中忘记填写 open-type 属性与其对应的值,则<navigator> 组件不会生效,通过下面栗子来学习一下。

home.wxml

  这里想要从首页页面跳转到消息页面,需要跳转的路径可以在 app.json 里进行查找。

<navigator url="/pages/message/message" open-type="switchTab">点我跳转到消息页面</navigator>

  注意:这里一定要指定 open-type 属性。可以来看下运行效果:

  当不指定 open-type 属性时,则不会生效,看下运行效果:

  可以发现怎么点击都没有生效。

2、导航到非 tabBar 页面

  非 tabBar 页面指的是没有被配置为 tabBar 的页面。比如现在的 home、message和contact 页面就是被配置为 tabBar 的页面,而 info 页面就是属于非 tabBar 页面。

在这里插入图片描述

  在小程序中,可以使用 <navigator> 组件跳转到普通的非 tabBar 页面时,则需要指定 url 属性和 open-type 属性:

属性说明
url表示要跳转的页面的地址,必须以 / 开头;
open-type表示跳转的方式,必须为 navigate;

  通过下面的栗子进行学习:

home.wxml

  这里想要从首页页面跳转到 info 页面,需要跳转的路径可以在 app.json 里进行查找。

<navigator url="/pages/info/info" open-type="navigate">点我跳转到info页面</navigator>

可省略 open-type 属性:

<navigator url="/pages/info/info">点我跳转到info页面</navigator>

  注意:为了简便,在导航到非 tabBar 页面时,open-type="navigate" 属性可以省略。 可以来看下运行效果:

3、后退导航

  最后学习的就是如果通过声明式导航来实现后退效果。如果要后退到上一页面或多级页面,则需要指定 open-type 属性和 delta 属性:

属性说明
open-type其值必须是 navigateBack,表示要进行后退导航
delta其值必须是数字,表示要后退的层级

  注意:为了简便,如果只是后退到上一页面,则可以省略 delta 属性,因为其默认值就是 1。通过下面的栗子来学习一下:

info.wxml

<navigator open-type="navigateBack" delta="1">返回上一页</navigator>

  这样的话,当点击跳转到 info 页面可以通过该组件返回到上一页,可以来看一下运行效果:

  在实际开发过程中,只要返回上一页效果的话,只写 open-type 属性即可。


总结

  感谢观看,这里就是页面导航 – 声明式导航的介绍使用,如果觉得有帮助,请给文章点个赞吧,让更多的人看到。🌹 🌹 🌹

在这里插入图片描述

  也欢迎你,关注我。👍 👍 👍

  原创不易,还希望各位大佬支持一下,你们的点赞、收藏和留言对我真的很重要!!!💕 💕 💕 最后,本文仍有许多不足之处,欢迎各位认真读完文章的小伙伴们随时私信交流、批评指正!下期再见。🎉

更多专栏订阅:

  • 😀 【LeetCode题解(持续更新中)】
  • 🚝 【Java Web项目构建过程】
  • 💛 【微信小程序开发教程】
  • 【JavaScript随手笔记】
  • 🤩 【大数据学习笔记(华为云)】
  • 🦄 【程序错误解决方法(建议收藏)】
  • 🚀 【软件安装教程】



订阅更多,你们将会看到更多的优质内容!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/390317.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

maven生命周期、阶段与默认绑定插件梳理

maven生命周期、阶段与默认绑定插件梳理 CSDN博客 码云源码 1.maven生命周期、阶段与默认绑定插件 序号生命周期lifecycle阶段phase默认绑定插件(链接官网)默认绑定插件(链接maven库)说明1cleancleanmaven-clean-pluginmaven-clean-plugin清理2.1buildvalidate——验证2.2b…

Unity记录1.1-入门-下载与创建项目

文章首发及后续更新&#xff1a;https://mwhls.top/4439.html&#xff0c;无图/无目录/格式错误/更多相关请至首发页查看。 新的更新内容请到mwhls.top查看。 欢迎提出任何疑问及批评&#xff0c;非常感谢&#xff01; 汇总&#xff1a;Unity 记录 写的很简略&#xff0c;因为不…

【数据挖掘与商务智能决策】第一章 数据分析与三重工具

numpy基础 numpy与数组 import numpy as np # 用np代替numpy,让代码更简洁 a [1, 2, 3, 4] # 创建列表a b np.array([1, 2, 3, 4]) #从列表ach print(a) print(b) print(type(a)) #打印a类型 print(type(b)) #打印b类型[1, 2, 3, 4] [1 2 3 4] <class ‘list’>…

目标检测: 数据增强代码详解

1. 常见的数据增强 1.1 翻转图像 左右水平翻转 假设图片的宽高为w,h,bdbox左上角A坐标为(x1,y1), 右下角B为(x2,y2)。经过左右水平翻转后,bdbox的左上角A1坐标(w-x2,y1) ,右下角B1坐标为(w-x1,y2)左右水平翻转的代码实现如下:from PIL import Image image = Image.open(i…

xmu 离散数学 卢杨班作业详解【4-7章】

文章目录第四章 二元关系和函数4.6.2911121618.120.222.1232834第五章 代数系统的一般概念2判断二元运算是否封闭348111214第六章 几个典型的代数系统1.5.6.7.11.12151618第七章 图的基本概念12479111215第四章 二元关系和函数 4. A{1,2,3} 恒等关系 IA{<1,1>,<2,2…

微服务到云原生

微服务到云原生 微服务 微服务架构&#xff08;Microservice Architecture&#xff09;是一种架构概念&#xff0c;旨在通过将功能分解到各个离散的服务中以实现对解决方案的解耦。 微服务是一种架构风格&#xff0c;一个大型复杂软件应用由一个或多个微服务组成。系统中的各…

为什么Gateway网关引入了LoadBalancer组件就拥有了负载均衡能力?

1、思考&#xff1a;一般而言&#xff0c;当我们在项目中引入了 LoadBalancer 负载均衡启动器组件&#xff0c;那么SpringBoot自动配置的ClassPath类路径加载机制会扫描到 LoadBalancer 类路径下的 spring.factories 配置文件&#xff0c;会注册一些Bean &#xff0c;但为什么网…

Java开发环境搭配

#Java开发环境搭建 oracle官网下载java https://www.oracle.com/cn/ 下载匹配电脑系统的版本 注意&#xff1a;安装路径不要包含中文 #JDK环境变量配置&#xff08;win10&#xff09; path 是一个常见的环境变量&#xff0c;它告诉系统除了在当前目录下寻找此程序外&#…

kafka3.0安装使用

一&#xff1a;定义 Kafka传 统定义&#xff1a;Kafka是一个分布式的基于发布/订阅模式的消息队列&#xff08;Message Queue&#xff09;&#xff0c;主要应用于大数据实时处理领域。 Kafka最 新定义 &#xff1a; Kafka是 一个开源的 分 布式事件流平台 &#xff08;Event St…

安卓反编译入门01-apktool反编译使用流程

apktool反编译使用流程1.获取工具apktool反编译 APK&#xff0c;首先要有工具apktool.jar apktool下载地址&#xff1a;https://bitbucket.org/iBotPeaches/apktool/downloads作者github 地址&#xff1a;https://github.com/iBotPeaches/Apktool无脑下最新版就行了。将下载好的…

计算机网络协议详解(一)

文章目录&#x1f525;计算机网络通信&#x1f525;TCP/IP协议群&#x1f525;TCP协议传输特点&#x1f525;服务端口&#x1f525;数据包与处理流程&#x1f525;计算机网络通信 什么是通信协议 简单来说&#xff0c;通信协议就是计算机之间通过网络实现通信时事先达成的一种…

陀螺仪小车(Forerake-Car)

项目简介&#xff1a;搭建一辆有arduino UNO 与rnf24l01组成的小车&#xff1b;手部安装由arduino nano开发板、nrf24l01、imu构成的手势控制器&#xff0c;利用手势控制器检测手部状态、发送信号对小车进行前进&#xff0c;实现基于卡尔曼滤波的MPU6050姿态结算。 准备工作&am…

蓝桥杯2023/3/2

1. 小蓝正在学习一门神奇的语言&#xff0c;这门语言中的单词都是由小写英文字母组 成&#xff0c;有些单词很长&#xff0c;远远超过正常英文单词的长度。小蓝学了很长时间也记不住一些单词&#xff0c;他准备不再完全记忆这些单词&#xff0c;而是根据单词中哪个字母出现得最…

格密码学习笔记(一):格的定义、基本区域和行列式

文章目录格的基本定义格的基本区域格的行列式致谢格的基本定义 定义1 给定nnn维实数空间Rn\mathbb{R}^nRn中的一组线性无关向量B{b1,…,bn}⊂Rn\bm{B} \{ \bm{b}_1, \dots, \bm{b}_n \} \subset \mathbb{R}^nB{b1​,…,bn​}⊂Rn&#xff0c;其整数系数线性组合构成的集合被称…

列表(list)、数组(numpy)、张量(tensor)、元组各自怎样查看形状

列表&#xff08;list&#xff09;、数组&#xff08;numpy&#xff09;、张量&#xff08;tensor&#xff09;、元组各自怎样查看形状 一、查看列表&#xff08;list&#xff09;的形状 1.shape import numpy as npL [[1,2],[3,4],[5,6],[7,8]] L np.array(L)print(L.sha…

大数据周会-本周学习内容总结04

目录 1、mysql数据同步到es 1.1、通过logstash同步数据 1.2、canal数据同步 1.3、通过logstash将本地文件导入es 2、git 1、mysql数据同步到es 1.1、通过logstash同步数据 elastic官方文档&#xff1a;如何使用Logstash和JDBC确保 Elasticsearch与关系型数据库保持同步&a…

5. unity之组件

1. 组件Component 物体可以挂载不同的组件以实现不同的功能&#xff0c;需要什么功能就添加什么组件。当我们选中一个物体后&#xff0c;就可以在右侧的属性窗口中添加组件&#xff0c;如下图所示&#xff1a; 2. AudioSource组件 使用这个组件可以为模型添加音乐或者声效效…

32- PyTorch基础 (PyTorch系列) (深度学习)

知识要点 PyTorch可以说是现阶段主流的深度学习框架 . 1 PyTorch入门 1.1 PyTorch概述 Torch是什么&#xff1f;一个火炬&#xff01;其实跟Tensorflow中Tensor是一个意思&#xff0c;可以当做是能在GPU中计算的矩阵.&#xff0c;也可以当做是ndarray的GPU版&#xff01; PyT…

Aspose.Words for JasperReports Crack

Aspose.Words for JasperReports Crack 添加了在文档中指定字符间距的功能。 添加了文档样式选项&#xff0c;允许您指定是否自动重新定义样式。 显著改进了图表渲染&#xff1a; 渲染径向渐变笔刷时添加了相对坐标支持。 增加了对呈现趋势线和趋势线R平方的支持。 增加了对渲染…

zabbix自定义模版Templates和监控项items

注&#xff1a;此处使用的客户端和服务端版本均为 ubuntu 2204 自定义模板和监控项实现过程 在Zabbix 被监控主机上编写自定义监控项的取值的脚本,并加执行权限在Zabbix 被监控主机上的配置文件中添加自定义监控项,指定 key 和 对 key 赋值的脚本及参数在Zabbix Server 上使用…