swan.getStorage

解释:从本地缓存中异步获取指定 key 对应的内容。

方法参数

Object object

object参数说明 :

success返回参数说明 :

示例

在开发者工具中预览效果 请使用百度APP扫码

图片示例

代码示例

建议先使用 setStorage, 再使用 getStorage 。 -

  1. <view class="container"> <view class="card-area"> <view class="list-area border-bottom"> <label class="list-item-key-4">key</label> <input class="list-item-value" bindfocus="keyFocus" bindinput="keyInput" type="text" value="{{key}}" placeholder="请输入key"/> </view> <view class="list-area border-bottom"> <label class="list-item-key-4">value</label> <input class="list-item-value" bindfocus="valueFocus" bindinput="valueInput" type="text" value="{{value}}" placeholder="请输入value"/> </view> <view> <button bindtap="setStorage" type="primary" hover-stop-propagation="true">存储数据</button> <button bindtap="getStorage" type="primary" hover-stop-propagation="true" disabled="{{disabled}}">读取数据</button> </view> </view></view>

-

  1. Page({ data: { key: '示例Key', value: '示例Value', disabled: true }, keyInput(e) { this.setData('key', e.detail.value); }, valueInput(e) { this.setData('value', e.detail.value); }, valueFocus() { this.setData('value', ''); }, keyFocus() { this.setData('key', ''); }, setStorage() { let key = this.hasKey(); if (!key) { return; } swan.setStorage({ key, data: this.getData('value'), success: res => { this.toast('存储成功', 'none'); this.setData('disabled', false); }, fail: err => { this.toast('存储数据失败'); } }); }, getStorage() { let key = this.hasKey(); if (!key) { return; } swan.getStorage({ key, success: res => { const data = res.data; if (data) { swan.showModal({ title: '数据信息', content: `${key}: ${data}`, showCancel: false }); } else { this.toast('找不到key对应的值'); } }, fail: err => { this.toast('读取数据失败'); } }); }, hasKey() { let key = this.getData('key'); if (key) { return key; } this.toast('key不能为空'); }, toast(title, icon = 'none') { swan.showToast({title, icon}); }});

错误码

Android

iOS

Bugs&Tips

通过swan.getStorage获取一个为设置的key对应值时, 目前会回调success函数并返回空字符串, 该问题会在后续版本修复,请关注公告及文档说明。