微信小程序实现form表单本地储存数据


Posted in Javascript onJune 27, 2019

本文实例为大家分享了微信小程序实现form表单本地储存数据的具体代码,供大家参考,具体内容如下

效果图:

微信小程序实现form表单本地储存数据

主要利用小程序的getStorage来实现异步本地储存。

小程序目录结构如下:

微信小程序实现form表单本地储存数据

新建项目前,为了简化操作可直接右键新建目录,这样建出来的文件会直接写在app.json中,无需手动添加。

login.wxml代码:

<!--pages/login/login.wxml-->
<view class='container'>
 <form bindsubmit='submit'>
 <view class='row'>
  <text>姓名:</text>
  <input type='text' name='userName' placeholder='请输入姓名' value='{{userName}}'/>
 </view>
 <view class='row'>
  <text>密码:</text>
  <input type='password' name='passWord' placeholder='请输入密码' value='{{passWord}}'/>
 </view>
 <view>
  <button form-type='submit' type='primary'>登陆</button>
 </view>
 </form>
</view>

login.wxss样式:

/* pages/login/login.wxss */
.container{
 padding: 1rem;
 font-size: 0.9rem;
 line-height: 1.5rem;
 border-shadow: 1px 1px #0099CC;
}
.row{
 display: flex;
 align-items: center;
 margin-bottom: 0.8rem;
}
.row text{
 flex-grow: 1;
 text-align: right;
}
.row input{
 font-size: 0.7rem;
 color: #ccc;
 flex-grow: 3;
 border: 1px solid #0099CC;
 display: inline-block;
 border-radius: 0.3rem;
 box-shadow: 0 0 0.15rem #aaa;
 padding: 0.3rem;
}
.row button{
 padding: 0 2rem;
}

重点login.js来了:

// pages/login/login.js
Page({
 
 /**
 * 页面的初始数据
 */
 data: {
 userName:'',
 passWord:''
 },
 /**
 * 生命周期函数--监听页面加载
 */
 onLoad: function (options) {
 
 },
 
 /**
 * 生命周期函数--监听页面初次渲染完成
 */
 onReady: function () {
 
 },
 
 /**
 * 生命周期函数--监听页面显示
 */
 onShow: function () {
 
 },
 
 /**
 * 生命周期函数--监听页面隐藏
 */
 onHide: function () {
 
 },
 
 /**
 * 生命周期函数--监听页面卸载
 */
 onUnload: function () {
 
 },
 
 /**
 * 页面相关事件处理函数--监听用户下拉动作
 */
 onPullDownRefresh: function () {
 
 },
 
 /**
 * 页面上拉触底事件的处理函数
 */
 onReachBottom: function () {
 
 },
 
 /**
 * 用户点击右上角分享
 */
 onShareAppMessage: function () {
 
 }
})

点击登陆时,触发submit函数,如下:

submit:function(e){
 console.log(e.detail.value);
 //表单数据
 var objData = e.detail.value;
 if (objData.userName && objData.passWord){
  //异步方式储存表单数据
  wx.setStorage({
  key: 'userName',
  data: objData.userName,
  })
  wx.setStorage({
  key: 'passWord',
  data: objData.passWord,
  })
  wx.navigateTo({
  url: '../detail/detail',
  })
 }
 
 },

储存好数据后,下次再打开该页面,先判断是否含有数据,有就填充。

onLoad: function (options) {
 var that = this
 wx.getStorage({
  key: 'userName',
  success: function(res) {
  that.setData({ userName: res.data })
  },
 })
 wx.getStorage({
  key: 'passWord',
  success: function (res) {
  console.log(res.data)
  that.setData({ passWord: res.data })
  },
 })
 },

以上就是完整的表单登陆加储存。

希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js 分页全选或反选标识实现代码
Aug 09 Javascript
原生javascript实现图片无缝滚动效果
Feb 12 Javascript
Node.js编写组件的三种实现方式
Feb 25 Javascript
jQuery实现的倒计时效果实例小结
Apr 16 Javascript
关于JavaScript和jQuery的类型判断详解
Oct 08 Javascript
微信小程序  http请求封装详解及实例代码
Feb 15 Javascript
Three.js获取鼠标点击的三维坐标示例代码
Mar 24 Javascript
JS自定义滚动条效果简单实现代码
Oct 27 Javascript
vue 项目打包通过命令修改 vue-router 模式 修改 API 接口前缀
Jun 13 Javascript
通过实例解析vuejs如何实现调试代码
Jul 16 Javascript
React 高阶组件HOC用法归纳
Jun 13 Javascript
浅谈Web Storage API的使用
Jun 23 Javascript
ES6 class的应用实例分析
Jun 27 #Javascript
ES6 Promise对象的应用实例分析
Jun 27 #Javascript
使用Vue 实现滑动验证码功能
Jun 27 #Javascript
js变量值传到php过程详解 将php解析成数据
Jun 26 #Javascript
javascript触发模拟鼠标点击事件
Jun 26 #Javascript
JavaScript动态添加数据到表单并提交的几种方式
Jun 26 #Javascript
react koa rematch 如何打造一套服务端渲染架子
Jun 26 #Javascript
You might like
php Smarty date_format [格式化时间日期]
2010/03/15 PHP
php自定义函数之递归删除文件及目录
2010/08/08 PHP
PHP扩展模块memcached长连接使用方法分析
2014/12/24 PHP
smarty简单应用实例
2015/11/03 PHP
thinkPHP简单调用函数与类库的方法
2017/03/15 PHP
PHP将英文数字转换为阿拉伯数字实例讲解
2019/01/28 PHP
JavaScript高级程序设计 学习笔记 js高级技巧
2011/09/20 Javascript
js判断屏幕分辨率的代码
2013/07/16 Javascript
jQuery分组选择器用法实例
2014/12/23 Javascript
jQuery中:first-child选择器用法实例
2014/12/31 Javascript
纯Javascript实现ping功能的方法
2015/03/20 Javascript
JS事件添加和移出的兼容写法示例
2016/06/20 Javascript
详解jQuery中基本的动画方法
2016/12/14 Javascript
原生JS实现《别踩白块》游戏(兼容IE)
2017/02/20 Javascript
js实现图片加载淡入淡出效果
2017/04/07 Javascript
Vue.js实现价格计算器功能
2020/03/30 Javascript
详解tween.js的使用教程
2017/09/14 Javascript
Vue 应用中结合vux使用微信 jssdk的方法
2018/08/28 Javascript
详解webpack打包时排除其中一个css、js文件或单独打包一个css、js文件(两种方法)
2018/10/26 Javascript
node.js中事件触发器events的使用方法实例分析
2019/11/23 Javascript
Python抓取手机号归属地信息示例代码
2016/11/28 Python
python+matplotlib演示电偶极子实例代码
2018/01/12 Python
Python pandas用法最全整理
2019/08/04 Python
python中数据库like模糊查询方式
2020/03/02 Python
用于ETL的Python数据转换工具详解
2020/07/21 Python
美国二手复古奢侈品包包购物网站:LXRandCo
2019/06/18 全球购物
大学生物业管理求职信
2013/10/24 职场文书
中学生学雷锋演讲稿
2014/04/26 职场文书
星级党支部申报材料
2014/05/31 职场文书
党员作风建设自查报告
2014/10/23 职场文书
2014年法院个人工作总结
2014/12/17 职场文书
读后感作文评语
2014/12/25 职场文书
大学生在校表现评语
2014/12/31 职场文书
仓库保管员岗位职责
2015/02/09 职场文书
Vue + iView实现Excel上传功能的完整代码
2021/06/22 Vue.js
Python3中最常用的5种线程锁实例总结
2021/07/07 Python