前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >weex-25-storage模块

weex-25-storage模块

作者头像
酷走天涯
发布2018-09-14 15:21:16
4830
发布2018-09-14 15:21:16
举报

Paste_Image.png

本节学习目标
  • 使用组件storage缓存数据到本地磁盘
  • 使用组件storage从本地磁盘读取数据
  • 如何删除键值对
  • 获取本地存储的键值对数量
  • 获取本地存储的所有键名数组

场景描述

比如我们在应用程序中输入一段文字,这个时候关闭程序,当再次打开后,我们想要看到上次输入的内容,这个需求就需要用到storage组件来实现数据的存储和数据的读取

内容比较简单 我们就开始吧

  • 引入组件
const storage = weex.requireModule('storage')
  • ** 一 数据的存储** API setItem(key, value, callback) 参数

key {string}:要存储的键,不允许是 "" 或 null value {string}:要存储的值,不允许是 "" 或 null callback {function (e)}:执行操作成功后的回调 e.result:表示设置是否成功,如果成功返回 "success" e.data:undefined 表示设置成功,invalid_param 表示 key/value 为 "" 或者 null

注意

1.key 和 value 只支持字符串,如果要存储对象,必须将其转换为字符串 2.我们如果多次缓存同一个key键的值,那么上次的值会被覆盖掉

代码如下

storage.setItem('cache',this.inputValue,res=>{
    if(res.result=='success'){
    // 数据缓存成功
    }
})
  • 二 读取数据

API getItem(key, callback)

参数

key {string}:要获取的值的名称,不允许是 "" 或 null callback {function (e)}:执行操作成功后的回调 e.result:表示设置是否成功,如果成功返回 "success" e.data:获取对应的键值字符串,如果没有找到则返回 undefined

代码

storage.getItem('cache',res=>{
    if(res.result=='success'){
        this.inputValue=res.data
    }
})
  • 三 清除缓存数据 根据键值清除缓存数据 API removeItem(key, callback) 参数

key {string}:要删除的值的名称,不允许是 "" 或 null callback {function (e)}:执行操作成功后的回调. e.result:表示删除是否成功,如果成功返回 "success" e.data:undefined 表示删除成功

代码如下

storage.removeItem('cache',res=>{
    if(res.result=='success'){
        modal.toast({message:'清除完成',duration:1})
    }
})
  • 四 获取存储的键值对数量

API length(callback) 参数

callback {function (e)}:执行操作成功后的回调 e.result:表示设置是否成功,如果成功返回 "success" e.data:当前已存储项的数量

代码

storage.length(res=>{
    if(res.result='success'){
        this.length = res.data
    }
})
  • 五.获取存储的所有键名数组

API: getAllKeys(callback) 参数

callback {function (e)}:执行操作成功后的回调。 e.result:表示设置是否成功,如果成功返回 "success" e.data:所有键名组成的数组

代码

storage.getAllKeys(res=>{
    if(res.result=='success'){
        this.inputValue = res.data.toString()
    }
})
开发过程中的注意点

1.storage 模块有一个限制就是浏览器端(H5)只能存储小于5M的数据,因为在 H5/Web 端的实现是采用 HTML5 LocalStorage API,iOS 和 android 端没有任何限制 2.这个模块存储的数据在同一个应用的任意一个vue页面都可以进行访问,它们共享本地数据

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017.06.05 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 本节学习目标
  • 开发过程中的注意点
相关产品与服务
云硬盘
云硬盘(Cloud Block Storage,CBS)为您提供用于 CVM 的持久性数据块级存储服务。云硬盘中的数据自动地在可用区内以多副本冗余方式存储,避免数据的单点故障风险,提供高达99.9999999%的数据可靠性。同时提供多种类型及规格,满足稳定低延迟的存储性能要求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档