vue中利用localStorage儲存全域性變數

2021-10-01 11:26:34 字數 1480 閱讀 3596

localstorage是本地儲存,允許在瀏覽器中儲存 key-value 對的資料,用於長久儲存整個**的資料,全域性變數可用這種方法儲存,在頁面重新整理不會丟失資料,儲存的資料沒有過期時間,直到手動去刪除。

可以儲存5m大小的資料(sessionstorage只可以儲存4k大小的資料)。

可將第一次請求的資料進行本地儲存,節約頻寬,快速響應。

永久儲存,儲存的資料沒有過期時間,需手動刪除;sessionstorage儲存資料的週期是當前會話的週期。

值型別儲存的是string型別的資料,儲存物件或者其他型別的資料需要轉換成string型別。

一些高版本瀏覽器支援:ie8.0、chrome 4.0、firefox 3.5、safari 4.0、opera 11.5及以上。

儲存資料過多,消耗記憶體,可能會導致頁面卡頓。

新建global.js檔案,設定儲存資料和返回資料的方法

export

default

,/**

1. 將需要儲存的資料賦給localstorage中的redisdata

2. data:需要儲存的資料(string型別)

**/setredisinformation

(data)

,}

在main.js中引入

import global from

'./global'

;vue.prototype.global = global;

在其他的vue頁面中使用

(1)儲存資料

/*

資料轉換,如果要儲存的資料是不是string型別,需轉換;如將json物件轉為string型別

data = josn.stringify(param)

*/this

.gloabl.

setredisinformation

(data)

//data是要儲存的資料

(2)獲取資料

var data =

this

.gloabl.

getredisinformation()

/*資料轉換,如string型別轉為json物件

var newdata = josn.parse(data)

*/

windows.localstorage.

setdata

("key"

,"value"

);

var data = windows.localstorage.

getdata

("key"

);

windows.localstorage.

removedata

("key"

);

利用Vue中keep alive,快速實現頁面快取

2.在路由中設定keepalive meta 3.更改 beforeeach鉤子 這一步是為了清空無用的頁面快取。假設現在a b兩個頁面都開啟的快取 若第一次進入a頁面後退出,再次進入頁面時,頁面不會重新整理。這和目前的業務邏輯不符。我們想要的結果是a頁面前進後返回,頁面保持不變,而不是退出後重新進...

在vue中利用 ref 設定scrollTop失效

運用場景 在列表中選擇專案跳轉到下乙個頁面詳情,重新返回這個頁面的時候,需要滾動到之前的位置。解決方法 點選跳轉的時候,把頁面滾動的位置存在session裡面,再次進來的時候,為容器賦值,發現不管怎麼設定 this.refs.content.scrolltop的值都為0,後面f放在nexttick方...

Mac中如何搭建Vue專案並利用VSCode開發

2 配置 映象 結果提示如下錯誤,如下圖所示 原來是在向 usr local lib node modules檔案寫入內容時提示沒有許可權,於是在終端中執行這條命令 sudo chmod r777 usr local lib node modules 然後再執行這條命令npm install g c...