微信小程序实现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 相关文章推荐
经常用的图片在容器中的水平垂直居中实例
Jun 10 Javascript
jquery的Tooltip插件 qtip使用详细说明
Sep 08 Javascript
jsp js鼠标移动到指定区域显示选项卡离开时隐藏示例
Jun 14 Javascript
JavaScript定时器详解及实例
Aug 01 Javascript
可自定义速度的js图片无缝滚动示例分享
Jan 20 Javascript
浅谈JavaScript中的对象及Promise对象的实现
Nov 15 Javascript
javascript简单比较日期大小的方法
Jan 05 Javascript
Angular 根据 service 的状态更新 directive
Apr 03 Javascript
原生JS改变透明度实现轮播效果
Mar 24 Javascript
JS实现仿饿了么在浏览器标签页失去焦点时网页Title改变
Jun 01 Javascript
angular4中*ngFor不能对返回来的对象进行循环的解决方法
Sep 12 Javascript
Vue+webpack项目配置便于维护的目录结构教程详解
Oct 14 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
Bo-Blog专用的给Windows服务器的IIS Rewrite程序
2007/08/26 PHP
php批量添加数据与批量更新数据的实现方法
2014/12/16 PHP
详解WordPress中分类函数wp_list_categories的使用
2016/01/04 PHP
PHP读取CSV大文件导入数据库的实例
2017/07/24 PHP
Laravel学习教程之request validation的编写
2017/10/25 PHP
PHP使用文件锁解决高并发问题示例
2018/03/29 PHP
Yii 框架使用数据库(databases)的方法示例
2020/05/19 PHP
Prototype使用指南之hash.js
2007/01/10 Javascript
Add a Picture to a Microsoft Word Document
2007/06/15 Javascript
jQuery中:gt选择器用法实例
2014/12/29 Javascript
js实现表单多按钮提交action的处理方法
2015/10/24 Javascript
js+canvas绘制五角星的方法
2016/01/28 Javascript
js实现键盘自动打字效果
2016/12/23 Javascript
javascript ES6中箭头函数注意细节小结
2017/02/17 Javascript
微信小程序实现实时圆形进度条的方法示例
2017/02/24 Javascript
JS鼠标滚动分页效果示例
2017/07/05 Javascript
Vue入门之数据绑定(小结)
2018/01/08 Javascript
浅谈vue项目如何打包扔向服务器
2018/05/08 Javascript
使用Webpack提升Vue.js应用程序的4种方法(翻译)
2019/10/09 Javascript
Vue实现一种简单的无限循环滚动动画的示例
2021/01/10 Vue.js
[40:50]2014 DOTA2国际邀请赛中国区预选赛 5 23 CIS VS LGD第四场
2014/05/24 DOTA
python获取各操作系统硬件信息的方法
2015/06/03 Python
Python使用回溯法子集树模板获取最长公共子序列(LCS)的方法
2017/09/08 Python
Python实现自动发送邮件功能
2021/03/02 Python
python 列表中[ ]中冒号‘:’的作用
2019/04/30 Python
Python虚拟环境库virtualenvwrapper安装及使用
2020/06/17 Python
在 Windows 下搭建高效的 django 开发环境的详细教程
2020/07/27 Python
韩国著名的在线综合购物网站:Akmall
2016/08/07 全球购物
面试求职的个人自我评价
2013/11/16 职场文书
综合办公室个人的自我评价
2013/12/22 职场文书
个人自我鉴定总结
2014/03/25 职场文书
2014保险公司内勤工作总结
2014/12/16 职场文书
先进教师个人主要事迹材料
2015/11/03 职场文书
慰问信(范文3篇)
2019/10/23 职场文书
编写python程序的90条建议
2021/04/14 Python
JavaScript实现外溢动态爱心的效果的示例代码
2022/03/21 Javascript