微信小程序如何修改本地缓存key中单个数据的详解


Posted in Javascript onApril 26, 2019

最近在做教师评教系统,有一个‘个人信息'页面中有个编辑修改邮箱的功能,本来想得很简单,结果进坑了,搞了好久才出来。

我想实现的效果是点击下图左侧邮箱,然后进入右侧页面,进行邮箱的修改,点击提交后跳转到左侧页面,同时邮箱也发生改变。

微信小程序如何修改本地缓存key中单个数据的详解

点击‘我的'时,我让它从控制台打印出student缓存中传过来的数据,如下:

{no: "1635050601", name: "张三", sex: "", email: "123@qq.com", classid: "100000-1602", …}
classid:"100000-1602"
classname:"16级PHP2"
departmentid:"100000"
departmentname:"软件学院"
name:"张三"
no:"1635050601"
sex:""

然后我添加邮箱后,后台接口写了方法让email的值直接存到student中,但是如果初次添加email的话可以实现,第二次修改email的话,就得想想该怎么从student里只修改email的值。

//表单提交
 formSubmit: function (e) {
 console.log(e.detail.value);
 var pwd = e.detail.value.pwd;
 var email = e.detail.value.email;
 if (pwd == '') {
  wx.showToast({
  title: '密码不能为空',
  icon: 'none',
  duration: 1000,
  })
 }else if (email == '') {
  wx.showToast({
  title: '邮箱不能为空',
  icon: 'none',
  duration: 1000,
  })
 }else {
  //post方式提交
  wx.request({
  url: app.globalData.url.bindemail,
  method: "POST",
  data: {
   no: this.data.no,
   pwd: pwd,
   email: email
  },
  header: {
   "Content-Type": "application/x-www-form-urlencoded"
  },
  success: function (res) {
   // console.log(res);
   if(res.data.error == true){
   wx.showToast({
    title: res.data.msg,
    icon: 'none',
    duration: 1000,
   })
   }else{
   //修改email
   var _student = wx.getStorageSync('student');
   _student.email = email;
   wx.setStorageSync('student', _student);
   
   wx.showToast({
    title: res.data.msg,
    icon: 'success',
    duration: 2000,
    success: function () {
    setTimeout(function () {
     wx.reLaunch({
     url: '../myinfo/myinfo',
     })
    }, 2000)
    }
   })
   }
  },
  })
 }
 },

这里我们用下边方法从student里只修改email的值。

//修改email
   var _student = wx.getStorageSync('student');
   _student.email = email;
   wx.setStorageSync('student', _student);

wx.setStorageSync(KEY,DATA)

将 data 存储在本地缓存中指定的 key 中,会覆盖掉原来该 key 对应的内容,这是一个同步接口。

wx.getStorageSync(KEY)

从本地缓存中同步获取指定 key 对应的内容。

如有问题或补充,欢迎小伙伴们留言哦~期待与你一同学习,共同进步!!!

以上所述是小编给大家介绍的微信小程序如何修改本地缓存key中单个数据详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
javascript 处理事件绑定的一些兼容写法
Dec 24 Javascript
JQuery制作的放大效果的popup对话框(未添加任何jquery plugin)分享
Apr 28 Javascript
通过js获取div的background-image属性
Oct 15 Javascript
Javascript实现页面跳转的几种方式分享
Oct 26 Javascript
js的Prototype属性解释及常用方法
May 08 Javascript
jQuery实现可展开合拢的手风琴面板菜单
Sep 15 Javascript
jQuery动态添加与删除tr行实例代码
Oct 18 Javascript
jQuery模拟下拉框选择对应菜单的内容
Mar 07 Javascript
Element-UI Table组件上添加列拖拽效果实现方法
Apr 14 Javascript
JS实现可切换图片的幻灯切换效果示例
May 24 Javascript
javascript实现视频弹幕效果(两个版本)
Nov 28 Javascript
Vue 封装防刷新考试倒计时组件的实现
Jun 05 Javascript
js验证身份证号码记录的方法
Apr 26 #Javascript
详解VScode编辑器vue环境搭建所遇问题解决方案
Apr 26 #Javascript
react高阶组件添加和删除props
Apr 26 #Javascript
详解微信小程序-canvas绘制文字实现自动换行
Apr 26 #Javascript
vue 进阶之实现父子组件间的传值
Apr 26 #Javascript
详解JS判断页面是在手机端还是在PC端打开的方法
Apr 26 #Javascript
配置一个vue3.0项目的完整步骤
Apr 26 #Javascript
You might like
mysql limit查询优化分析
2008/11/12 PHP
php实现refresh刷新页面批量导入数据的方法
2014/12/23 PHP
php使用pdo连接并查询sql数据库的方法
2014/12/24 PHP
php中preg_match的isU代表什么意思
2015/10/01 PHP
thinkphp在php7环境下提示Cannot use ‘String’ as class name as it is reserved的解决方法
2016/09/30 PHP
laravel与thinkphp之间的区别与优缺点
2021/03/02 PHP
来自国外的14个图片放大编辑的jQuery插件整理
2010/10/20 Javascript
Jquery 实现grid绑定模板
2015/01/28 Javascript
js实现input框文字动态变换显示效果
2015/08/19 Javascript
JavaScrip调试技巧之断点调试
2015/10/22 Javascript
【JS+CSS3】实现带预览图幻灯片效果的示例代码
2016/03/17 Javascript
jQuery EasyUI API 中文帮助文档和扩展实例
2016/08/01 Javascript
微信小程序 数据遍历的实现
2017/04/05 Javascript
纯JavaScript实现实时反馈系统时间
2017/10/26 Javascript
解决option标签selected="selected"属性失效的问题
2017/11/06 Javascript
浅谈vuejs实现数据驱动视图原理
2018/02/23 Javascript
详解如何在Vue里建立长按指令
2018/08/20 Javascript
JavaScript实现动态添加、移除元素或属性的方法分析
2019/01/03 Javascript
AngularJs中$cookies简单用法分析
2019/05/30 Javascript
VScode格式化ESlint方法(最全最好用方法)
2019/09/10 Javascript
JS获取当前时间戳方法解析
2020/08/29 Javascript
[04:44]显微镜下的DOTA2第二期——你所没有注意到的细节
2014/06/20 DOTA
Python 读取某个目录下所有的文件实例
2018/06/23 Python
Tornado Web Server框架编写简易Python服务器
2018/07/28 Python
详解关于Django中ORM数据库迁移的配置
2018/10/08 Python
Python中*args和**kwargs的区别详解
2019/09/17 Python
如何使用Python发送HTML格式的邮件
2020/02/11 Python
对Matlab中共轭、转置和共轭装置的区别说明
2020/05/11 Python
python实现图片,视频人脸识别(opencv版)
2020/11/18 Python
浅谈HTML5 & CSS3的新交互特性
2016/07/19 HTML / CSS
工作个人的自我评价
2014/01/14 职场文书
六月份红领巾广播稿
2014/02/03 职场文书
创建服务型党组织实施方案
2014/02/25 职场文书
导游词之烟台威海蓬莱
2019/11/14 职场文书
企业版Windows 11有哪些新功能? Win11适用于企业的功能介绍
2021/11/21 数码科技
SQL Server的存储过程与触发器以及系统函数和自定义函数
2022/04/10 SQL Server