本文介紹微信小程序頁面跳轉的兩種方式及頁面跳轉時的數據傳遞。
跳轉的數據傳遞
類似 Android 的 Intent 傳值,微信小程序也一樣可以傳值:
例如:wxml 中寫了一個函數跳轉:
- <view class="itemWeight" catchtap="jumpToOverMissionList">
- <view class="textStatus">已完成任務</view>
- <view class="containVertical textNum">{{finishedMissionCount}}</view>
- </view>
在 js 代碼中寫:其中,url 是跳轉的相對路徑,?問號后面加的是參數,以 key-value 的方式,
這里傳了個 value 為 2 的參數過去
- //跳轉到已結束任務列表頁
- jumpToOverMissionList:function(){
- wx.navigateTo({
- url:"mission/missionList/missionList?type=2"
- });
- },
然后在 missionList.js 中的 OnLoad()方法得到值:option.type 就可以得到了
- onLoad: function(option) {
- this.setData({
- type:option.type,
- });
- console.log(option.type);
- }
頁面跳轉
今天嘗試了下小程序點擊頁面跳轉,有兩種方式:navigator 組件跳轉和添加點擊事件跳轉。
navigator 組件跳轉
和 a 標簽跳轉差不多,給 navigator 添加要跳轉到的 url 地址即可(這里需要注意下,我們在使用微信 web 開發者工
具按 enter 自動補全時生成的組件有錯,navigator 閉合標簽的“/” 位置應該是在 navigator 前,而自動生成的是
<navigator/>,導致編譯報錯,同樣的還有 image 組件等)
<navigator url="../logs/logs">點擊跳轉到 logs 頁面</navigator>
為組件綁定跳轉事件
index.wxml 中為 image 綁定事件
<image src="{{item.imgsrc}}" bindtap="tz"></image>
index.js 文件中添加跳轉方法:
- tz: function(){
- wx.navigateTo({
- url: '../logs/logs',
- success: function(res){
- // success
- },
- fail: function() {
- // fail
- },
- complete: function() {
- // complete
- }
- })
- }
新聞熱點
疑難解答