公司新作項目需要在之前的小程序裏面加一個模塊,上面要求用小程序嵌套h5的方式去搞,在使用web-view的時候,嵌入頁面貌似沒有任何問題,傳遞數據到h5也貌似沒有問題,看着很完美,可是在使用的時候坑一個接一個的。
坑一:頭部返回按鈕的不顯示
坑二:頁面不會保留
坑三:Android上傳頁面回退首頁。。。
小小一個功能坑實在是太多了,上微信公衆平臺看了下大家遇到過類似的問題,但是官方比你高沒有給出合理的結覺方案,下面開始小編的填坑之路。
坑一:原先想着是在H5頁面中寫一個頭部,加入返回按鈕,但是這樣的話 就需要在每一個頁面裏面都需要加入這個頭部,無形中加大了工作量,本心是很不願意的,至於最後的解決方案,後面再說。
坑二:頁面不會保留,思路是 想着在還中做路由緩存,即每次跳轉都記錄下當前路由,當下次進來的時候,直接跳轉到之前保留的路由就可以,這個方案看着沒什麼問題,但是致命的問題是有的時候你並不知道首頁需不需要緩存【刷新、黑屏再打開】,所以這方案欠佳。
坑三:因爲真個H5使用的是antd-mobile組件庫,原先以爲是他自身組件的問題,後面單獨調試了下H5的上傳,沒有問題,後面以爲是文件太大了 或者是上送的方式【base64】不同,後面經過測試,並不是這些問題,還是因爲頁面不保留的問題。
最終填坑方案:web-view嵌套
即首頁一個web-view,下面所有子頁面都會是拎一個web-view,這樣話 上述的3個問題都可以解決了。大家可以試試 有問題可以留言,咋們一起交流交流。