微信小程序数据存储与取值详解


Posted in Javascript onJanuary 30, 2018

在小程序开发的过程,经常要需要这个页面输入的数据,在下一个页面中进行取值赋值。

比如:

微信小程序数据存储与取值详解

微信小程序数据存储与取值详解

在A页面input输入框,输入电话号码,点击添加。需要在B页面电话区域中,显示刚刚输入的电话号码。

因为这是两个页面,就需要先存储,再取值。微信小程序提供了数据存储的API,wx.setStorage(OBJECT) 可以将数据存储在本地缓存中指定的 key 中,如果重复会覆盖掉原来该 key 对应的内容。

思路是,在A页面,使用bindinput获取input输入的值,赋值给一个变量(自定义),点击添加按钮时,如果变量不为空,将变量的值存储在本地缓存中,在B页面,使用wx.getStorage(OBJECT) 方法取值;

ps : 源代码在页面底部

代码如下:

微信小程序数据存储与取值详解

对input输入框,绑定事件bindinput="bindKeyInput" ,设置value="{{inputValue}}" ,因为电话号码为数字,设置type="number" 。对按钮添加点击事件bindtap="addbtn"

在JS文件中添加代码

微信小程序数据存储与取值详解

B页面代码

微信小程序数据存储与取值详解

在JS文件中,声明变量addtel。在页面切换过来的时候,取出我们刚存储的值,赋值给变量addtel。在需要显示电话号码的地方,用变量来接收。

在JS文件中添加代码

data:{
  addtel : ''
}

微信小程序数据存储与取值详解

这里在onShow的方法中进行取值,当小程序启动,或从后台进入前台显示,就会触发 onShow。

不过,每个微信小程序都可以有自己的本地缓存,使用这些方法时,要注意本地缓存最大为10MB,wx.setStorage(wx.setStorageSync)wx.getStorage(wx.getStorageSync)可以对本地缓存进行设置、获取和清理。。

也可以使用wx.clearStorage(wx.clearStorageSync)来清理缓存。

代码写完之后,进行测试。

微信小程序数据存储与取值详解

在输入框中输入电话号码,点击添加。

微信小程序数据存储与取值详解

OK,取值成功。

A页面源代码:

<view class="add-page">
  <input placeholder="输入手机号添加客户" type="number" bindinput="bindKeyInput" value="{{inputValue}}" />
   <button type="warn" class="add-btn" bindtap="addbtn" >添加</button>
</view>
var app = getApp()
Page({
 data: {
  inputValue:''
 },
 bindKeyInput:function(e){
  this.setData({
   inputValue: e.detail.value
  })
 },
 addbtn:function(){
   if(this.data.inputValue){
    wx.redirectTo({
     url: '../ordered/ordered'
    })
    wx.setStorage({
     key:"addTel",
     data:this.data.inputValue
    })
   }else{
    wx.showModal({
     title: '手机号为空',
     content: '请输入手机号码',
     success: function(res) {
      if (res.confirm) {
       console.log('用户点击确定')
      }
     }
    })
   }
 },
 onload:function(){
  //onload
 }

})

B页面源代码:

<view class="menu-item">
 <navigator class="menu-item-main" >
   <text class="menu-item-name">电话</text>
   <view class="ordtel">
    <text class="ordtext">{{addtel}}</text>
    <image class="menu-item-icon"  src="/image/tel.png"></image>
   </view>      
 </navigator>
</view>
var app = getApp()
Page({
  data:{
    addtel : ''
  },
  onShow:function(){
  var that = this;
  wx.getStorage({
   key: 'addTel',
   success: function(res) {
     console.log(res.data)
     that.setData({
      addtel:res.data
     })
   } 
  })
 }
})

其他相关资料可以查阅小程序官方API。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript Event学习第十章 一些可替换的事件对
Feb 10 Javascript
JS获取单击按钮单元格所在行的信息
Jun 17 Javascript
浅谈JavaScript中指针和地址
Jul 26 Javascript
Boostrap基础教程之JavaScript插件篇
Sep 08 Javascript
Angularjs中controller的三种写法分享
Sep 21 Javascript
使用Bootstrap打造特色进度条效果
May 02 Javascript
Vue学习笔记进阶篇之函数化组件解析
Jul 21 Javascript
浅谈Vue.js中的v-on(事件处理)
Sep 05 Javascript
vuejs前后端数据交互之从后端请求数据的实例
Aug 11 Javascript
JS实现简单的点赞与踩功能示例
Dec 05 Javascript
微信小程序 下拉刷新及上拉加载原理解析
Nov 06 Javascript
springboot+VUE实现登录注册
May 27 Vue.js
Vue精简版风格概述
Jan 30 #Javascript
vue自定义全局组件(自定义插件)的用法
Jan 30 #Javascript
vue2.0之多页面的开发的示例
Jan 30 #Javascript
vue-cli实现多页面多路由的示例代码
Jan 30 #Javascript
jQuery与vue实现拖动验证码功能
Jan 30 #jQuery
5 种JavaScript编码规范
Jan 30 #Javascript
vue源码入口文件分析(推荐)
Jan 30 #Javascript
You might like
PHP高级OOP技术演示
2009/08/27 PHP
PHP初学者最感迷茫的问题小结
2010/03/27 PHP
php网页病毒清除类
2014/12/08 PHP
动态改变textbox的宽高的js
2006/10/26 Javascript
用函数式编程技术编写优美的 JavaScript
2006/11/25 Javascript
js验证表单第二部分
2006/11/25 Javascript
jquery 将disabled的元素置为enabled的三种方法
2009/07/25 Javascript
浅析hasOwnProperty方法的应用
2013/11/20 Javascript
JS中如何判断传过来的JSON数据中是否存在某字段
2014/08/18 Javascript
jQuery使用load()方法载入另外一个网页文件内的指定标签内容到div标签的方法
2015/03/25 Javascript
js实现点击文本框显示日期选择器特效代码分享
2020/05/21 Javascript
jQuery实现类似标签风格的导航菜单效果代码
2015/08/25 Javascript
基于jQuery实现拖拽图标到回收站并删除功能
2015/11/25 Javascript
完美解决spring websocket自动断开连接再创建引发的问题
2017/03/02 Javascript
基于Vue实现页面切换左右滑动效果
2020/06/29 Javascript
webpack学习笔记之优化缓存、合并、懒加载
2017/08/24 Javascript
Vue官方文档梳理之全局配置
2017/11/22 Javascript
vue项目中jsonp跨域获取qq音乐首页推荐问题
2018/05/30 Javascript
微信小程序登录按钮遮罩浮层效果的实现方法
2018/12/16 Javascript
利用d3.js制作连线动画图与编辑器的方法实例
2019/09/05 Javascript
webpack是如何实现模块化加载的方法
2019/11/06 Javascript
解决vue项目打包上服务器显示404错误,本地没出错的问题
2020/11/03 Javascript
[02:38]2018年度DOTA2最佳劣单位选手-完美盛典
2018/12/17 DOTA
python类和函数中使用静态变量的方法
2015/05/09 Python
Python+Selenium+PIL+Tesseract自动识别验证码进行一键登录
2017/09/20 Python
Python中字符串与编码示例代码
2019/05/20 Python
Python字典常见操作实例小结【定义、添加、删除、遍历】
2019/10/25 Python
使用keras实现densenet和Xception的模型融合
2020/05/23 Python
python实现每天自动签到领积分的示例代码
2020/08/18 Python
app内嵌H5 webview 本地缓存问题的解决
2020/10/19 HTML / CSS
文明青少年标兵事迹材料
2014/01/28 职场文书
关于元旦的广播稿
2014/02/16 职场文书
教师党员岗位承诺书
2014/05/29 职场文书
群众路线查摆问题整改措施思想汇报
2014/10/10 职场文书
2014年帮扶工作总结
2014/11/26 职场文书
高中物理教学反思
2016/02/19 职场文书