vue項目使用cookie和localStorage進行儲存數據

一,cookie的使用

1,首先加載模塊

npm i js-cookie -S

2,在使用cookie的頁面上進行引入

import Cookies from 'js-cookie'

3,使用方法

  • 創建一個在整個網站上有效的Cookie

    Cookies.set('name', 'value');
    
  • 創建一個從現在起7天后過期的cookie,在整個站點上有效:

    Cookies.set('name', 'value', { expires: 7 });
    
  • 創建一個過期的cookie,對當前頁面的路徑有效:

    Cookies.set('name', 'value', { expires: 7, path: '' });
    
  • 讀取cookie:

    Cookies.get('name'); // => 'value'
    Cookies.get('nothing'); // => undefined
    
  • 閱讀所有可見的Cookie:

    Cookies.get(); // => { name: 'value' }
    
  • 刪除cookie:

    Cookies.remove('name');
    
  • 刪除對當前頁面路徑有效的cookie:

    Cookies.set('name', 'value', { path: '' });
    Cookies.remove('name'); // fail!
    Cookies.remove('name', { path: '' }); // removed!
    

重要!刪除cookie時,您必須傳遞用於設置cookie的完全相同的路徑和域屬性,除非您依賴於默認屬性。
注意:刪除未存在的cookie不會引發任何異常,也不會返回任何值

二,localStorage的使用

注:vue下使用localStorage和H5使用localStorage的方法是一致的,不需要引入插件

1,儲存

//數據
localStorage.setItem('userName','HelloWeen');

2,獲取

localStorage.getItem('userName')

3,刪除

localStorage.removeItem('userName');

4,localStorage可以儲存JSON對象,且沒有時間限制的數據存儲 ,除非主動刪除。

//數組
var arr=[1,2,3];
localStorage.setItem("temp",arr); //會返回1,2,3
console.log(typeof localStorage.getItem("temp"));//string
console.log(localStorage.getItem("temp"));//1,2,3

5,localStorage.setItem() 不會自動將Json對象轉成字符串形式

var user= {"userName": "hello","age": 2};
typeof localStorage.getItem("user");//也會返回String
localStorage.setItem("user", user);//但是返回[object Object],

6,用localStorage.setItem()正確存儲JSON對象方法是:

  • 存儲前先用JSON.stringify()方法將json對象轉換成字符串形式

  • JSON.stringify() 方法可以將任意的 JavaScript 值序列化成 JSON 字符串

  • 獲取的時候要將之前存儲的JSON字符串使用JSON.parse()先轉成JSON對象再進行操作

var user= {"userName": "hello","age": 2};
user= JSON.stringify(user); //轉化爲JSON字符串  "{"userName":"hello","age":2}"
localStorage.setItem("user", user);//返回{"userName":"hello","age":2}
user=JSON.parse(localStorage.getItem("user"));
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章