小程序的持久化存储

目录

 小程序的持久化存储

JSON的格式转化

 


 小程序的持久化存储

1.在vuex中声明一个叫做 saveToStorage 的 mutations 方法,依靠setStorageSync方法

saveToStorage(state) {
   uni.setStorageSync('xxx', JSON.stringify(state.xxx))
}

2.在合适的位置, 通过 commit 方法,调用 saveToStorage 方法

   this.commit('saveToStorage')

3.修改vuex中的state函数,读取本地存储的数据,依靠uni.getStorageSync,并对state中的数据进行初始化


state: () => ({
   cart: JSON.parse(uni.getStorageSync('xxx') || '依情况而定,可能是对象也可能是数组或者字符串')
}),


JSON的格式转化

本地存储只能存储字符类型的数据,可以在存储时将其转化为JSON字符串类型,取出来的时候再将其转化回来

JSON.parse()        //将JSON格式的字符串转化为对象类型

JSON.stringify()        //将JSON格式的数据(对象类型)转化为JSON格式的字符串

举个例子:——现在要向本地存储一个对象obj

  var obj={
            name:'李白',
            age:18
        }
        // 持久化存储
        // let objpro=JSON.stringify(obj)
        localStorage.setItem('objpro',obj)
        // console.log(objpro)

如果不使用JSON.stringify() ,那么在本地显示的是

 如果是这样的话,我们之后就算取,也是取不出来里面的数据的,所以要使用JSON.stringify()

 

 那将本地中的数据取出来的,也是JSON数据,我们需要的不是json数据,同理使用JSON.parse()   将其转化成原来正常的数据类型就可以了。



  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值