關于Flutter中InAppWebView的H5頁面localStorage的緩存問題
現象:
開發了一個flutter項目,使用InAppWebView,里面鏈接Vue的項目,vue項目也是從github上找了一個框架,然后二次開發,開發的時候使用瀏覽器測試都正常,但是打包app后安裝測試就有問題了,在注銷第一個用戶,再登錄第二個用戶后,獲取到的還是第一個用戶的信息.
查找原因:
非常明顯的是,flutter InAppWebView緩存的問題,但是對dart語言不太熟,不想改flutter的代碼,經過一番測試,發現是 用的vue項目在使用localStorage時,在上面又封裝了一層,是使用ES6的class語法,估計是這樣造成了flutter InAppWebView默認緩存機制對這個封裝對象進行了緩存.
解決:
方法很簡單,不使用框架的封裝,直接使用原生localStorage對象獲取即可:
const {username} = JSON.parse(localStorage.getItem('app_account'))

浙公網安備 33010602011771號