属性 | 说明 |
---|---|
target | 打开位置 self:当前小程序;默认 miniProgram:外部小程序 |
url | 跳转链接|地址;相对地址或绝对地址 |
open-type | 跳转类型 navigate:默认,也可以是外部小程序 switchTab:到标签页 |
delta | 数字,后退的层级;默认是1,可以省略 |
app-id | 外部小程序的AppID;在更多资料中获取 |
path | 外部小程序的页面 |
extra-data | 传递给外部小程序的数据 |
跳转到普通页面 - 仅指定 url
<navigator url="../test/test">To Page Test</navigator>
跳转到外部小程序 - 指定app-id和target
<navigator app-id="wx91d27dbf599dff74" target="miniProgram">To JD</navigator>
跳转到标签页 - 指定open-type
<navigator url="../photo/photo" open-type="switchTab">To Tab Photo </navigator>
后退1页 - 省略delta
<navigator open-type="navigate">Back</navigator>
参数和url之间使用 ? 连接
多个参数以 & 分隔
静态数据 - url?name=value&...
<navigator url="../test/test?name=gl">To Page Test</navigator>
动态数据 - 使用数据绑定
<navigator url="../test/test?name={{uname}}">To Page Test</navigator>
onLoad(option) { console.log(option); }
跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面
gotoCart(){ wx.switchTab({ url:'/pages/photo/photo' //url:'../photo/photo' }) }
保留当前页面,跳转到应用内的某个普通页面;不能跳到 tabbar 页面
gotoTest(){ wx.navigateTo({ url:'../test/test', success:()=>{ console.log('success'); }, fail:()=>{ console.log('fail'); }, complete:()=>{ console.log('complete'); } }) }
返回上一页
backToHome(){ wx.navigateBack({ delta:1 }) }
拼接参数
gotoTest(){ wx.navigateTo({ url:'../test/test?name=gl&age=18' }) }
目标页获取参数
onLoad(option: any) { console.log(option); }
使用<navigator>,修改个人中心静态页面,采用列表渲染定制导航;根据不同的导航项,动态设置目标页的导航标题
该案例也适合客户、产品详情页,如:使用一个页面展示不同的商品内容
个人中心页 wxml - 导航节点示例,其它略
<navigator url="../target/target?title=favorite&bgc=#889900" class="item"> <text class="iconfont icon-like icon"></text> </navigator>
目标页 js - 获取参数,设置标题和背景颜色
onLoad(options){ wx.setNavigationBarTitle({ title:options.title }) wx.setNavigationBarColor({ frontColor: '#ffffff',//MUST backgroundColor:options.bgc }) }
使用普通组件,绑定单击事件,在事件处理函数中使用导航API
个人中心页 wxml - 绑定事件
<view bind:tap="toTarget" data-bgc="#908" data-title="message" class="item"> <text class="iconfont icon-clipboard icon"></text> </view>
个人中心页 js- 事件处理函数
toTarget(e){ let para=e.currentTarget.dataset wx.navigateTo({ url: '../target/target?title='+para.title+'&bgc='+para.bgc, }) }
目标页 js- 同上
...