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


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 相关文章推荐
基于jquery的DIV随滚动条滚动而滚动的代码
Jul 20 Javascript
使用js判断TextBox控件值改变然后出发事件
Mar 07 Javascript
js实现基于正则表达式的轻量提示插件
Aug 29 Javascript
JS实现的自定义网页拖动类
Nov 06 Javascript
基于jquery实现省市联动效果
Nov 23 Javascript
javascript 数组去重复(在线去重工具)
Dec 17 Javascript
jQuery实现的浮动层div浏览器居中显示效果
Feb 03 Javascript
JS传参及动态修改页面布局
Apr 13 Javascript
jQuery 实现双击编辑表格功能
Jun 19 jQuery
vue项目中vue-i18n和element-ui国际化开发实现过程
Apr 25 Javascript
jQuery md5加密插件jQuery.md5.js用法示例
Aug 24 jQuery
Vue中插入HTML代码的方法
Sep 21 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
PHP技术开发技巧分享
2010/03/23 PHP
PHP通过API获取手机号码归属地
2015/05/28 PHP
Yii框架表单提交验证功能分析
2017/01/07 PHP
ThinkPHP框架表单验证操作方法
2017/07/19 PHP
PHP集成环境XAMPP的安装与配置
2018/11/13 PHP
不用AJAX和IFRAME,说说真正意义上的ASP+JS无刷新技术
2008/09/25 Javascript
jQuery cdn使用介绍
2013/05/08 Javascript
js正则表达式验证邮件地址
2015/11/12 Javascript
VUEJS实战之利用laypage插件实现分页(3)
2016/06/13 Javascript
通过javascript进行UTF-8编码的实现方法
2016/06/27 Javascript
详解JavaScript中return的用法
2017/05/08 Javascript
基于webpack-hot-middleware热加载相关错误的解决方法
2018/02/22 Javascript
vue项目环境变量配置的实现方法
2018/10/12 Javascript
微信小程序点击保存图片到本机功能
2019/12/13 Javascript
浅谈vue-props的default写不写有什么区别
2020/08/09 Javascript
Vue+Spring Boot简单用户登录(附Demo)
2020/11/12 Javascript
python通过线程实现定时器timer的方法
2015/03/16 Python
简单的Python2.7编程初学经验总结
2015/04/01 Python
python实现的简单抽奖系统实例
2015/05/22 Python
Ruby使用eventmachine为HTTP服务器添加文件下载功能
2016/04/20 Python
谈谈python中GUI的选择
2018/03/01 Python
PyQt5实现下载进度条效果
2018/04/19 Python
对Python中gensim库word2vec的使用详解
2018/05/08 Python
python实现统计代码行数的小工具
2019/09/19 Python
对Tensorflow中tensorboard日志的生成与显示详解
2020/02/04 Python
如何在django中实现分页功能
2020/04/22 Python
Python图像识别+KNN求解数独的实现
2020/11/13 Python
html5指南-7.geolocation结合google maps开发一个小的应用
2013/01/07 HTML / CSS
泰国国际航空公司官网:Thai Airways International
2019/12/04 全球购物
简述Linux文件系统通过i节点把文件的逻辑结构和物理结构转换的工作过程
2012/04/17 面试题
班组长竞聘书
2014/03/31 职场文书
艺术教育实施方案
2014/05/03 职场文书
预防传染病方案
2014/06/14 职场文书
暑假学习心得体会
2014/09/02 职场文书
国际贸易本科毕业生求职信
2014/09/26 职场文书
银行催款通知书
2015/04/17 职场文书