navigator 页面导航

解释:页面链接,控制小程序的跳转,既可在当前小程序内部进行跳转,也可跳转至其他小程序。navigator的子节点背景色应为透明色。

属性说明

属性名类型默认值必填说明最低版本

target

String

self

在哪个目标上发生跳转,默认当前小程序,有效值 self/miniProgram

2.5.2
低版本请做兼容性处理

url

String

应用内的跳转链接

-

open-type

String

navigate

跳转方式

-

delta

Number

当 open-type 为navigateBack时有效,表示回退的层数

-

app-id

String

target=”miniProgram”时有效,要打开的小程序 App Key (小程序后台设置-开发设置中)

2.5.2
低版本请做兼容性处理

path

String

target=”miniProgram”时有效,打开的页面路径,如果为空则打开首页

2.5.2
低版本请做兼容性处理

extra-data

Object

target=”miniProgram”时有效,需要传递给目标小程序的数据,目标小程序可在 App.onLaunchApp.onShow 中获取到这份数据

2.5.2
低版本请做兼容性处理

version

String

release

target=”miniProgram”时有效,要打开的小程序版本,有效值 develop(开发版),trial(体验版),release(正式版),仅在当前小程序为开发版或体验版时此参数有效;如果当前小程序是正式版,则打开的小程序必定是正式版

2.5.2
低版本请做兼容性处理

hover-class

String

navigator-hover

指定点击时的样式类,当hover-class=”none”时,没有点击态效果

hover-stop-propagation

Boolean

false

指定是否阻止本节点的祖先节点出现点击态

-

hover-start-time

Number

50

按住后多久出现点击态(单位:毫秒)

-

hover-stay-time

Number

600

手指松开后点击态保留时间(单位:毫秒)

-

bindsuccess

String

target=”miniProgram”时有效,跳转小程序成功

2.5.2
低版本请做兼容性处理

bindfail

String

target=”miniProgram”时有效,跳转小程序失败

2.5.2
低版本请做兼容性处理

bindcomplete

String

target=”miniProgram”时有效,跳转小程序完成

2.5.2
低版本请做兼容性处理

target 有效值

说明
self当前小程序
miniProgram跳转到另一个小程序

version 有效值

说明
develop开发版
trial体验版
release正式版

open-type 有效值

说明最低版本

navigate

保留当前页面,跳转到应用内的某个页面,但是不能跳转到 tabbar 页面。对应 swan.navigateTo 的功能

redirect

关闭当前页面,跳转到应用内的某个页面。对应 swan.redirectTo 的功能

switchTab

跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面。对应 swan.switchTab 的功能

navigateBack

关闭当前页面,返回上一页面或多级页面。对应 swan.navigateBack 的功能

reLaunch

关闭所有页面,打开到应用内的某个页面。对应 swan.reLaunch 的功能

exit

退出小程序,target=”miniProgram”时生效

2.5.2

示例

跳转编辑工具

在开发者工具中打开

在 WEB IDE 中打开

扫码体验

代码示例

百度智能小程序

请使用百度APP扫码

代码示例

  • SWAN
  • JS
  1. <view class="wrap">
  2. <view class="card-area">
  3. <button type="primary">
  4. <navigator
  5. target="self"
  6. open-type="navigate"
  7. url="/component/detail/detail?id=新页面,点击左上角返回回到之前页面"
  8. hover-class="navigator-hover"
  9. hover-start-time="50"
  10. hover-stay-time="600"
  11. hover-stop-propagation="true">
  12. 跳转到新页面
  13. </navigator>
  14. </button>
  15. <button type="primary">
  16. <navigator
  17. s-if="{{!isWeb}}"
  18. target="self"
  19. open-type="redirect"
  20. url="/component/detail/detail?id=当前页,点击左上角返回回到上级菜单"
  21. hover-class="navigator-hover"
  22. hover-start-time="50"
  23. hover-stay-time="600"
  24. hover-stop-propagation="true">
  25. 在当前页打开
  26. </navigator>
  27. </button>
  28. <button type="primary">
  29. <navigator
  30. s-if="{{!isWeb}}"
  31. target="self"
  32. open-type="navigateBack"
  33. hover-class="navigator-hover"
  34. hover-start-time="50"
  35. hover-stay-time="600"
  36. hover-stop-propagation="true"
  37. delta="1">
  38. 返回上一页面
  39. </navigator>
  40. </button>
  41. <button type="primary">
  42. <navigator
  43. s-if="{{!isWeb}}"
  44. target="miniProgram"
  45. open-type="exit">
  46. 退出当前小程序
  47. </navigator>
  48. </button>
  49. <button type="primary">
  50. <navigator
  51. target="self"
  52. open-type="switchTab"
  53. url="/entry/component/component">
  54. 打开一个有Tab的页面
  55. </navigator>
  56. </button>
  57. <button type="primary">
  58. <navigator
  59. target="self"
  60. open-type="reLaunch"
  61. url="/component/detail/detail?id=新页面,点击左上角返回回到上级菜单">
  62. 关闭所有页面打开新页面
  63. </navigator>
  64. </button>
  65. <button type="primary">
  66. <navigator
  67. target="miniProgram"
  68. s-if="{{!isWeb}}"
  69. open-type="navigate"
  70. extra-data="extra-data"
  71. app-id="79RKhZ2BTvyyHitg4W3Xle4kkFgwwXyp"
  72. version="release"
  73. bindsuccess="successHandler"
  74. bindfail="failHandler"
  75. bindcomplete="completeHandler">
  76. 打开绑定的小程序
  77. </navigator>
  78. </button>
  79. </view>
  80. </view>

说明

navigator-hover默认为:

  • CSS
  1. {
  2. background-color: rgba(0, 0, 0, 0.1);
  3. opacity: 0.7;
  4. }

常见问题

Q:请问下如何关闭小程序?

A:可以通过组件进行关闭当前小程序的操作。

代码示例

  • SWAN
  1. <button type="primary">
  2. <navigator target="miniProgram" open-type="exit">退出当前小程序</navigator>
  3. </button>