一、四种跳转方式

API路由详解

除了tabBar这种底部跳转的方法,我们还有路由跳转,以下四种方式:

  1. wx.switchTab() :跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面

           url:  tabBar 页面的路径(需在 app.json 的 tabBar 字段定义的页面),路径后不能带参数

  2.wx.reLaunch() :关闭所有页面,打开到应用内的任意页面,可带参

        url: 'path?key=value&key2=value2'

  3.wx.redirectTo() :关闭当前页面,跳转到应用内非 tabBar 页面路径,可带参(会执行onUnload生命周期方法)

        url : 'path?key=value&key2=value2'

  4.wx.navigateTo():保留当前页面,跳转到应用内非 tabBar 页面路径(会执行onHide生命周期方法,生成顶部返回按钮,并且页面堆栈+1)

        url: 'path?key=value&key2=value2'

路由触发详解

路由参数:

四种跳转使用:

1.1wx.switchTab(Object object)

示例代码:

 1) 先做两个tabBar页面

 "tabBar": {
"backgroundColor":"#123",
"color": "#FFFFFF",
"list": [{
"pagePath": "pages/test/test",
"text": "text",
"iconPath": "images/icon1.png",
"selectedIconPath": "images/icon1-active.png"
},
{
"pagePath": "pages/test2/test2",
"text": "text2",
"iconPath": "images/icon2.png",
"selectedIconPath": "images/icon2-active.png"
}]
},

主文件 app.js

 2) test.js  往index页面跳转  /表示根目录

wx.switchTab({
url: '/index'
})

1.2wx.reLaunch(Object object)

wx.redirectTo(Object object) / wx.navigateTo(Object object) 和这个代码一样,注意跳转页面的不同就好了

示例代码

test1.js

wx.reLaunch({
url: 'test2?id=1'
})

test2.js 页面加载会触发

Page({
 onLoad(option) {
   console.log(option.query)
}
})

1.5wx.redirectTo与wx.navigateTo的区别

  1.利用wx.navigateTo跳转到下一个页面的时候(这时候会执行onHide方法),下一个页面会有顶部返回按钮

  2.如果不想有返回按钮,可以用wx.redirectTo进行页面跳转(会执行onUnload生命周期,关闭当前页面跳转,没有页面可以返回)

  3.调用 navigateTo 跳转时,调用该方法的页面会被加入堆栈(保留页面去跳转,页面计数会增加,返回页面时用),而 redirectTo 方法则不会(和2相似)

1.6 wx.navigateBack(Object object)

使用 wx.navigateBack(),关闭当前页面,返回上一页面或多级页面,最多十层。
可通过 getCurrentPages() 获取当前的页面栈,决定需要返回几层

参数:

使用:

示例代码:

// 此处是A页面js,跳到B
wx.navigateTo({
url: 'B?id=1'
})

// 此处是B页面js,跳到C
wx.navigateTo({
url: 'C?id=1'
})

// 在C页面js内 navigateBack,将返回2级到A页面
wx.navigateBack({
delta: 2
})
// 注意:调用 navigateTo 跳转时,调用该方法的页面会被加入堆栈,而 redirectTo 方法则不会

二、在前端跳转方法 见官方文档

navigator 官方API


10 微信小程序路由跳转的更多相关文章

  1. 微信小程序路由跳转

    微信小程序路由跳转 1.wx.switchTab(Object object) 这里的tabBar是底下的导航栏指定的页面, 跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面 参数 O ...

  2. 微信小程序 路由跳转 异步请求 存储数据,微信登录接口

    1小程序路由跳转 wx.switchTab(Object object) 这里的tabBar是底下的导航栏指定的页面 跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面 tabBar l ...

  3. 微信小程序路由跳转(navigateTo,redirectTo ,switchTab ,reLaunch )

    navigateTo, redirectTo 只能打开非 tabBar 页面. switchTab 只能打开 tabBar 页面. reLaunch 可以打开任意页面. 通过redirect重定向的页 ...

  4. 微信小程序-页面跳转与参数传递

    QQ讨论群:785071190 微信小程序页面跳转方式有很多种,可以像HTML中a标签一样添加标签进行跳转,也可以通过js中方法进行跳转. navigator标签跳转 <view class=& ...

  5. 用python一步一步教你玩微信小程序【跳一跳】

    12月28日,微信上线了小游戏「跳一跳」,瞬间成了全民游戏,如何牢牢占据排行榜的第一位呢?用Python帮助你,Python真的无所不能. 作为技术出身的我们,是不是想用技术改变排名呢? 注意:本文适 ...

  6. 微信小程序页面跳转方法总结

    微信小程序页面跳转目前有以下方法(不全面的欢迎补充): 1. 利用小程序提供的 API 跳转: // 保留当前页面,跳转到应用内的某个页面,使用wx.navigateBack可以返回到原页面.// 注 ...

  7. 微信小程序如何跳转到另一个小程序

    微信小程序如何跳转到另一个小程序,要注意:在app.json文件里也要配置 navigateToMiniProgramAppIdList,如下图: "navigateToMiniProgra ...

  8. 利用python实现微信小程序游戏跳一跳详细教程

    利用python实现微信小程序游戏跳一跳详细教程 1 先安装python 然后再安装pip <a href="http://newmiracle.cn/wp-content/uploa ...

  9. 一个C#程序员学习微信小程序路由的笔记

    路由大家应该都知道,在微信小程序也是有的,毕竟它是单页面应用程序.在WeChat中有五种跳转方式,分别是wx.switchTab.wx.reLaunch.wx.redirectTo.wx.naviga ...

随机推荐

  1. javascript入门 之 zTree (一)

    1.安装: 我用的bower工具,所以执行: bower install ztree 2.详细功能与配制,请考官方文档: http://www.treejs.cn/v3/main.php#_zTree ...

  2. JAVA中Calendar 类的应用

    转自:https://www.imooc.com/code/2340 侵删! Date 类最主要的作用就是获得当前时间,同时这个类里面也具有设置时间以及一些其他的功能,但是由于本身设计的问题,这些方法 ...

  3. posix系统线程调度-设置线程优先级

    #include <thread> #include <mutex> #include <iostream> #include <chrono> #in ...

  4. Python 操作mysql数据库之 SQLAlchemy 案例详解

      前言: 字段声明类型中,最右边的是数据库中对应的字段,我们依然可以使用,其左边的的 SQLAchemy 则是其自身封装的自定义类型. 本篇不会讲太多的理论知识,因为这个实用性更强,所以通篇全部都是 ...

  5. python 性能测试

            python中使用的性能测试模块是memory_profiler , 我们使用它里面的profile这个装饰器即可测试出我们的代码的内存使用情况了.   如果没有安装 memory_p ...

  6. 用python爬取之后发现果然如此,都说知乎的小姐姐漂亮

    前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取http ...

  7. Python 分析后告诉你闲鱼上哪些商品抢手?

    前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者:[Airpython] PS:如有需要Python学习资料的小伙伴可以 ...

  8. PHP本地开发利器:内置Web Server

    PHP 5.4.0起, CLI SAPI 提供了一个内置的Web服务器. 命令:php -S 这个内置的Web服务器主要用于本地开发使用,不可用于线上产品环境. URI请求会被发送到PHP所在的的工作 ...

  9. Linux-LAMP虚拟主机配置

    1.配置用户认证 <Directory /data/discuz/passwd> AllowOverride AuthConfig AuthName "自定义的" Au ...

  10. JDBC 工具类封装

    每次使用jdbc 我们都要 加载驱动类 创建链接 创建Statement 接口对象执行sql 关闭资源 按照这样的套路可以封装一些重用代码方便在其他方法中调用 package com.xzlf.jdb ...