微信小程序学习笔记之本地数据缓存功能详解


Posted in Javascript onMarch 29, 2019

本文实例讲述了微信小程序学习笔记之本地数据缓存功能。分享给大家供大家参考,具体如下:

前面介绍了微信小程序获取位置信息操作。这里再来介绍一下微信小程序的本地数据缓存功能。

【将数据存储在本地缓存】wx.setStorage

【读取本地缓存】wx.getStorage

以手机号+密码登录为例,把登录成功返回的token值存储在本地缓存中,然后读取缓存中的token:

login.php:

<?php 
  header("Content-type:text/html;charset=utf-8");
  $arr = array("state"=>0,"data"=>array(),"msg"=>'');
  $phone = $_POST['phone'];
  $password = $_POST['password'];
  if($phone && $password){
	//省略验证......

	//返回登录token
	$tokenstr = 'liweishan666';
	$token = $phone.time().$tokenstr;//省略加密

	$arr['state'] = 1;
	$arr['msg'] = '登录成功';
	$arr['data']['token'] = $token;
  }else{
	$arr['msg'] = '参数错误';
  }
  echo json_encode($arr);
  die;

login.wxml:

<form bindsubmit="formSubmit" bindreset="formReset">
 <view>
  手机号:<input type="text" name="phone" placeholder="请输入账号" confirm-type="done" />
  密码:<input password type="number" name="password" placeholder="请输入6位密码" maxlength="6" />
 </view>
 <view class="btn-area">
  <button formType="submit">登录</button>
 </view>

 <view class="btn-area">
  <button bindtap="gettoken">读取缓存token</button>
 </view>

 <view class="btn-area">{{token}}</view>
</form>

login.js:

Page({
 formSubmit: function (e) {
  wx.request({
   url: 'https://www.msllws.top/login.php',
   data: {
    'phone': e.detail.value.phone,
    'password': e.detail.value.password
   },
   method: 'POST',
   header: {
    'Content-Type': 'application/x-www-form-urlencoded'
   },
   success: function (res) {
    console.log(res.data);
    //以键值对的形式存储到本地缓存
    wx.setStorage({
     key: "token",
     data: res.data.data.token
    })
   },
   fail: function () { },
   complete: function () { }
  })
 },

 gettoken: function (e) {
  var that = this
  wx.getStorage({
   key: 'token',
   success: function (res) {
    that.setData({'token': res.data})
   },
   fail: function () { },
   complete: function () { }
  })
 }
})

实现缓存的存储和读取:

微信小程序学习笔记之本地数据缓存功能详解

【从缓存中移除指定数据】wx.removeStorage

wx.removeStorage({
 key: 'token',
 success (res) {
  console.log(res.data)
 } 
})

 【清除全部缓存数据】wx.clearStorage

wx.clearStorage()

希望本文所述对大家微信小程序开发有所帮助。

Javascript 相关文章推荐
区分JS中的undefined,null,&quot;&quot;,0和false
Mar 08 Javascript
javascript 写类方式之三
Jul 05 Javascript
javascript生成随机数的方法
May 16 Javascript
使用Javascript写的2048小游戏
Nov 25 Javascript
javascript加减乘除的简单实例
Jul 12 Javascript
javascript中的 object 和 function小结
Aug 14 Javascript
JavaScript中绑定事件的三种方式及去除绑定
Nov 05 Javascript
yii form 表单提交之前JS在提交按钮的验证方法
Mar 15 Javascript
js设置随机切换背景图片的简单实例
Nov 12 Javascript
微信小程序实现导航栏选项卡效果
Jun 19 Javascript
详解redux异步操作实践
Aug 15 Javascript
vue组件从开发到发布的实现步骤
Nov 11 Javascript
微信JS-SDK updateAppMessageShareData安卓不能自定义分享详解
Mar 29 #Javascript
详解vue配置后台接口方式
Mar 29 #Javascript
微信小程序学习笔记之获取位置信息操作图文详解
Mar 29 #Javascript
点击按钮弹出模态框的一系列操作代码实例
Mar 29 #Javascript
VUE解决微信签名及SPA微信invalid signature问题(完美处理)
Mar 29 #Javascript
微信小程序生成分享海报方法(附带二维码生成)
Mar 29 #Javascript
微信小程序学习笔记之文件上传、下载操作图文详解
Mar 29 #Javascript
You might like
thinkphp配置连接数据库技巧
2014/12/02 PHP
php动态绑定变量的用法
2015/06/16 PHP
PHP读取mssql json数据中文乱码的解决办法
2016/04/11 PHP
js 实现图片预加载(js操作 Image对象属性complete ,事件onload 异步加载图片)
2011/03/25 Javascript
javascript学习笔记(十五) js间歇调用和超时调用
2012/06/20 Javascript
javascipt基础内容--需要注意的细节
2013/04/10 Javascript
客户端js性能优化小技巧整理
2013/11/05 Javascript
在JavaScript中正确引用bind方法的应用
2015/05/11 Javascript
jQuery复制表单元素附源码分享效果演示
2015/09/30 Javascript
JQuery和PHP结合实现动态进度条上传显示
2016/11/23 Javascript
jQuery实现移动端Tab选项卡效果
2017/03/15 Javascript
React组件生命周期详解
2017/07/03 Javascript
Easy UI动态树点击文字实现展开关闭功能
2017/09/30 Javascript
react-router v4如何使用history控制路由跳转详解
2018/01/09 Javascript
如何利用@angular/cli V6.0直接开发PWA应用详解
2018/05/06 Javascript
React SSR样式及SEO的实践
2018/10/22 Javascript
微信小程序与后台PHP交互的方法实例分析
2018/12/10 Javascript
[01:08]DOTA2“血战之命”预告片
2017/08/12 DOTA
[01:11:37]完美世界DOTA2联赛PWL S2 SZ vs FTD.C 第一场 11.19
2020/11/19 DOTA
详解Django通用视图中的函数包装
2015/07/21 Python
EM算法的python实现的方法步骤
2018/01/02 Python
使用Python实现从各个子文件夹中复制指定文件的方法
2018/10/25 Python
pip安装python库的方法总结
2019/08/02 Python
基于python调用psutil模块过程解析
2019/12/20 Python
pytorch GAN伪造手写体mnist数据集方式
2020/01/10 Python
利用Python制作动态排名图的实现代码
2020/04/09 Python
CSS3文本换行word-wrap解决英文文本超过固定宽度不换行
2013/10/10 HTML / CSS
澳大利亚家用电器在线商店:Billy Guyatts
2020/05/05 全球购物
市场营销管理制度
2014/01/29 职场文书
保护环境建议书
2014/03/12 职场文书
参赛口号
2014/06/16 职场文书
感恩老师演讲稿400字
2014/08/28 职场文书
《珍珠鸟》教学反思
2016/02/16 职场文书
表扬稿表扬信的格式及范文
2019/06/24 职场文书
利用python Pandas实现批量拆分Excel与合并Excel
2021/05/23 Python
python编程学习使用管道Pipe编写优化代码
2021/11/20 Python