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


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 相关文章推荐
EasyUi tabs的高度与宽度根据IE窗口的变化自适应代码
Oct 26 Javascript
js对象内部访问this修饰的成员函数示例
Apr 27 Javascript
js+canvas绘制五角星的方法
Jan 28 Javascript
JavaScript给每一个li节点绑定点击事件的实现方法
Dec 01 Javascript
javaScript生成支持中文带logo的二维码(jquery.qrcode.js)
Jan 03 Javascript
Move.js入门
Feb 08 Javascript
详解angularJS动态生成的页面中ng-click无效解决办法
Jun 19 Javascript
js html实现计算器功能
Nov 13 Javascript
vue项目中引入Sass实例方法
Aug 27 Javascript
Element的el-tree控件后台数据结构的生成以及方法的抽取
Mar 05 Javascript
Vue 电商后台管理项目阶段性总结(推荐)
Aug 22 Javascript
js 实现碰撞检测的示例
Oct 28 Javascript
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
用libtemplate实现静态网页生成
2006/10/09 PHP
利用php+mcDropdown实现文件路径可在下拉框选择
2013/08/07 PHP
thinkPHP5框架实现多数据库连接,跨数据连接查询操作示例
2019/05/29 PHP
javascript实现div的拖动并调整大小类似qq空间个性编辑模块
2012/12/12 Javascript
Node.js实现的简易网页抓取功能示例
2014/12/05 Javascript
js实现当鼠标移到表格上时显示这一格全部内容的代码
2016/06/12 Javascript
基于Bootstrap的UI扩展 StyleBootstrap
2016/06/17 Javascript
Angularjs自定义指令实现三级联动 选择地理位置
2017/02/13 Javascript
分享十三个最佳JavaScript数据网格库
2017/04/07 Javascript
学习使用Bootstrap栅格系统
2017/05/11 Javascript
javascript中关于类型判断的一些疑惑小结
2018/10/14 Javascript
vue cli3 调用百度翻译API翻译页面的实现示例
2019/09/13 Javascript
vue实现户籍管理系统
2020/05/29 Javascript
原生js实现贪吃蛇游戏
2020/10/26 Javascript
js实现验证码干扰(动态)
2021/02/23 Javascript
利用python批量检查网站的可用性
2016/09/09 Python
Python首次安装后运行报错(0xc000007b)的解决方法
2016/10/18 Python
浅谈python编译pyc工程--导包问题解决
2019/03/20 Python
利用PyQt中的QThread类实现多线程
2020/02/18 Python
python 解决print数组/矩阵无法完整输出的问题
2020/02/19 Python
Django Model层F,Q对象和聚合函数原理解析
2020/11/12 Python
美国娱乐和流行文化商品店:FYE
2017/09/14 全球购物
Bally巴利英国官网:经典瑞士鞋履、手袋及配饰奢侈品牌
2018/05/07 全球购物
安德玛加拿大官网:Under Armour加拿大
2019/10/02 全球购物
团日活动总结书格式
2014/05/08 职场文书
体育专业大学生职业生涯规划范文:打造自己的运动帝国
2014/09/12 职场文书
党员干部三严三实心得体会
2014/10/13 职场文书
一年级小学生评语大全
2014/12/25 职场文书
小区环境卫生倡议书
2015/04/29 职场文书
小学数学教师研修日志
2015/11/13 职场文书
教你做个可爱的css滑动导航条
2021/06/15 HTML / CSS
Python进行区间取值案例讲解
2021/08/02 Python
《Estab Life》4月6日播出 正式PV、主视觉图公开
2022/03/20 日漫
pycharm无法安装cv2模块问题
2022/05/20 Python
Java数据结构之堆(优先队列)
2022/05/20 Java/Android
深入理解pytorch库的dockerfile
2022/06/10 Python