[WeChat]關於小程序左上角的返回按鈕事件的替換方案 - [有缺陷]

寫在前面, 由於小程序的左上角返回按鈕事件,沒有能直接用的方案(ps:我在官方文檔上以及官方社區上沒找到,望找到的大神告知,不勝感謝), 只能在事件邏輯上攔截,但是會產生一個體驗度不好的缺陷

缺陷
是會在跳轉目標頁的時候,會有一個跳轉到祖級頁面,祖級頁面又跳回父級頁面的bug!!! 看上去就覺得在亂跳頁面

場景
頁面棧: 活動列表頁 => 活動詳情頁 => 活動參加發佈頁
前提: A 在活動詳情頁跳轉發布頁,關閉活動詳情頁, 進入(新開的頁面)發佈頁

  1. 發佈頁(當前頁面)是存在交互接口,點擊發布按鈕,關閉當前頁,新開頁面跳轉到名義上的父級頁面(活動詳情頁),這一步沒有問題
  2. 如果用戶在發佈頁(當前頁面),沒有啥上傳或輸入的操作,直接點擊左上角的返回按鈕返回,由於父頁面(活動詳情頁)已關掉,就會直接跳到祖頁面(活動列表頁),這體驗就相當的差了
    前提:B 在父級頁面跳轉子頁面時,不關閉父級頁面
    1.同場景A的第一步,但是在父級頁面再點擊左上角的返回按鈕時 ,就會出現兩個看上去一樣的頁面
  3. 在當前頁面啥操作沒有直接點擊左上角的返回按鈕,這一步沒有問題

通過場景復現可以看出,由於小程序沒有直接的控制左上角的返回按鈕事件,只能進行事件邏輯模擬操作

有下面的兩個思路

  1. 還是關閉活動詳情頁,新開頁面進行操作
  2. 在發佈頁設置一個是否通過onUnload進行跳轉的變量isSkipByOnUnload:true
  3. 在發佈頁點發布按鈕之後,跳轉時,也新開頁面跳轉到名義上的父級頁面(活動詳情頁),同時設置isSkipByOnUnload爲false,就可以避開onUnload的跳轉事件
  4. 在無操作點擊返回時, 這時isSkipByOnUnload 爲true, 在onUnload中新開頁面返回名義上的父級頁面(活動詳情頁),看上去的亂跳頁面就是在這裏產生的,(實際上會先跳回活動列表頁再跳回活動詳情頁)

頁面棧中兩個相同頁面的問題解決了,新的問題又出現了,還未找到新的解決方案,暫時記錄下,做備用方案

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章