微信小程序-navigator的跳转&页面数据的传递/传值

2019-04-29  本文已影响0人  Christoles

一、先了解下 navigator 的跳转方式

<navigator url="">点我跳转</navigator>

navigator --- 导航需要注意的:

  • 其默认会保留当前页,相当于 navigatorTo(只有 navigatorTo 有页面栈),在小程序开发的页面栈 最多只有10层,但返回上一层不算。
  • 其默认 不能 跳转到 tabBar 页面(即是一般在小程序中下面的页面切换功能)!!!除非设置 open-type 为 switchTab,才允许跳转到 tabBar 页面。
实例 1 :默认跳转方式:
<navigator url="/pages/icon/icon">点我 !!! 进入icon 页面</navigator>
// 这里的icon页面请自行设置在pages里,且不用在json文件的tarBar的list中添加
// url是设置跳转的路径
实例 2 :可跳转至tabBar 页面:
<navigator open-type='switchTab' url="/pages/index/index">点我!!跳转到tabBar的index页面 </navigator>
// 这里的index页面程序自动生成,且在json文件的tarBar的list自动添加了的

二、了解 navigator 跳转方式后,我们来看看怎样在页面间传递数据的

下面两种方式的原理都是在 url 跳转路径中 加上 ?键名=键值 的方式传递
且在form的js文件中:

onLoad: function (options) {//options专门用于接受数据的
   console.log("接受shoufengqin页面传递过来的参数:",options)
 },

form 和 shoufengqin 页面请自行创建

第 1 种跳转方式(直接在url后面拼接) 例子:

wxml:

<navigator url="/pages/form/form?cc={{isVal}}">点我 !!! 进入表单页面!传值cc</navigator>

js:

data: {
    isVal:"我是传值"
  }

跳转到指定页面后控制台输出:


image.png

第 2 种跳转方式(wx.navigateTo) 例子:

wxml:

<button bindtap="goForm">跳转到form页面 绑定事件传值</button>

js:
多数据用 & 拼接

data: {
    isShow:1,
    isVal:"我是传值"
  },
goForm(){
    wx.navigateTo({//---wx.  传当前页面的数据到另外一个页面!!!
      url: "/pages/form/form?id=" + this.data.isShow + "&val=" + this.data.isVal + "&uid=" + this.data.isShow
    })
  },

跳转到指定页面后控制台输出:


image.png
上一篇 下一篇

猜你喜欢

热点阅读