返回顶部
首页 > 资讯 > 前端开发 > node.js >微信小程序中本地存储及登录页面处理的实例
  • 428
分享到

微信小程序中本地存储及登录页面处理的实例

2024-04-02 19:04:59 428人浏览 八月长安
摘要

这篇文章主要介绍了微信小程序中本地存储及登录页面处理的实例,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。登录界面:在app.JSON中添加登

这篇文章主要介绍了微信小程序中本地存储及登录页面处理的实例,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

登录界面:

app.JSON中添加登陆页面pages/login/login,并设置为入口。

微信小程序中本地存储及登录页面处理的实例

保存后,自动生成相关文件(挺方便的)。

微信小程序中本地存储及登录页面处理的实例

修改视图文件login.wxml

<!--pages/login/login.wxml-->
<view class="container">
  <fORM bindsubmit="formSubmit">
    <view class="row">
      <text>姓 名:</text>
      <input type="text" name="userName" placeholder="请输入用户名" />
    </view>
    <view class="row">
      <text>密 码:</text>
      <input type="passWord" name="userPassword" placeholder="请输入密码" />
    </view>
    <view class="row">
      <button type="primary" form-type="submit">登陆</button>
    </view>

  </form>
</view>

修改登陆样式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;
}

看下样式:

微信小程序中本地存储及登录页面处理的实例

form相关属性:

属性名类型说明
report-submitBoolean是否返回formId用于发送模板消息
bindsubmitEventHandle携带form中的数据触发submit事件,event.detail = { value : {"name":"value"} , formId:"" }
bindresetEventHandle表单重置时会触发reset事件

这里用到了bindsubmit ,用于处理提交的表单数据。

input 相关属性

属性名类型默认值说明
valueString
输入框的内容
typeStringtextinput的类型,有效值:text,number,idcard,digit,time,date
passwordBooleanfalse是否是密码类型
placeholderString
输入框为空时占位符
placeholder-styleString
指定placeholder的样式
placeholder-classStringinput-placeholder指定placeholder的样式类
disabledBooleanfalse是否禁用
maxlengthNumber140最大输入长度,设置为0的时候不限制最大长度
auto-focusBooleanfalse自动聚焦,拉起键盘。页面中只能有一个input设置auto-focus属性
focusBooleanfalse使得input获取焦点
bindchangeEventHandle
输入框失去焦点时,触发bindchange事件,event.detail={value:value}
bindinputEventHandle
除了date/time类型外的输入框,当键盘输入时,触发input事件,event.detail={value:value},处理函数可以直接return一个字符串,将替换输入框的内容。
bindfocusEventHandle
输入框聚焦时触发,event.detail = {value:value}
bindblurEventHandle
输入框失去焦点时触发,event.detail = {value:value}

button 相关属性

属性名类型默认值说明
sizeStringdefault有效值default, mini
typeStringdefault按钮的样式类型,有效值primary, default, warn
plainBooleanfalse按钮是否镂空,背景色透明
disabledBooleanfalse是否禁用
loadingBooleanfalse名称前是否带 loading 图标
formTypeString有效值:submit, reset,用于form组件,点击分别会触发submit/reset事件
hover-classStringbutton-hover指定按钮按下去的样式类。当hover-class="none"时,没有点击态效果

此Demo中将button的formType设置为submit用于激活表单提交事件。

实例二: 处理登陆表单数据

修改login.js

// pages/login/login.js
Page({
 data:{
  userName:'',
  userPassword:'',
 },

 formSubmit:function(e){
  console.log(e.detail.value);//格式 Object {userName: "user", userPassword: "password"}

  //获得表单数据
  var objData = e.detail.value;

  if(objData.userName && objData.userPassword){
   // 同步方式存储表单数据
   wx.setStorageSync('userName', objData.userName);
   wx.setStorageSync('userPassword', objData.userPassword);

   //跳转到成功页面
   wx.navigateTo({
    url: '../index/index'
   })
  }
 },

 //加载完后,处理事件 
 // 如果有本地数据,则直接显示
 onLoad:function(options){
  //获取本地数据
  var userName = wx.getStorageSync('userName');
  var userPassword = wx.getStorageSync('userPassword');

  console.log(userName);
  console.log(userPassword);
  if(userName){
   this.setData({userName: userName});
  }
  if(userPassword){
   this.setData({userPassword: userPassword});
  }

 },
 onReady:function(){
  // 页面渲染完成
 },
 onShow:function(){
  // 页面显示
 },
 onHide:function(){
  // 页面隐藏
 },
 onUnload:function(){
  // 页面关闭
 }
})

这里使用到了wx.getStorageSync和wx.setStorageSync,这里说一下,上面这两个方法类似于HTML5的本地存储,属于同步存储方式。

这两个方法,使用很简单,列下参数:

wx.setStorageSync(KEY,DATA)

属性名类型必填说明
keyString本地缓存中的指定的key
dataObject/String需要存储的内容

wx.getStorageSync

属性名类型必填说明
KEYString本地缓存中的指定的key

修改一下login.wxml

 <view class="row">
      <text>姓 名:</text>
      <input type="text" name="userName" placeholder="请输入用户名" value="{{userName}}" />
    </view>
    <view class="row">
      <text>密 码:</text>
      <input type="password" name="userPassword" placeholder="请输入密码" value="{{userPassword}}" />
    </view>

这个小实例,会在登陆的时候,将登陆信息存到本地存储,当下次登陆时,如果本地存储中有相应信息,则直接填写上。

效果(再一次运行后,自动填写上了信息):

微信小程序中本地存储及登录页面处理的实例

实例三: 处理登陆表单数据(异步)

这里采用异步的方式存放数据。

修改一下login.js

// pages/login/login.js
Page({
 data:{
  userName:'',
  userPassword:'',
 },

 formSubmit:function(e){
  console.log(e.detail.value);//格式 Object {userName: "user", userPassword: "password"}

  //获得表单数据
  var objData = e.detail.value;

  if(objData.userName && objData.userPassword){
   // 同步方式存储表单数据
   wx.setStorage({
    key:'userName', 
    data:objData.userName
   });
   wx.setStorage({
    key:'userPassword', 
    data:objData.userPassword
   });

   //跳转到成功页面
   wx.navigateTo({
    url: '../index/index'
   })
  }
 },

 //加载完后,处理事件 
 // 如果有本地数据,则直接显示
 onLoad:function(options){
  var that = this;
  //获取本地数据
  wx.getStorage({
   key: 'userName',
   success: function(res){
    console.log(res.data);
    that.setData({userName: res.data});
   }
  });
  wx.getStorage({
   key: 'userPassword',
   success: function(res){
    console.log(res.data);
    that.setData({userPassword: res.data});
   }
  });
 },
 onReady:function(){
  // 页面渲染完成
 },
 onShow:function(){
  // 页面显示
 },
 onHide:function(){
  // 页面隐藏
 },
 onUnload:function(){
  // 页面关闭
 }
})

wx.setStorage(OBJECT)

属性名类型必填说明
keyString本地缓存中的指定的 key
dataObject/String需要存储的内容
successFunction接口调用成功的回调函数
failFunction接口调用失败的回调函数
completeFunction接口调用结束的回调函数(调用成功、失败都会执行)

wx.getStorage(OBJECT)

属性名类型必填说明
keyString本地缓存中的指定的 key
successFunction接口调用的回调函数,res = {data: key对应的内容}
failFunction接口调用失败的回调函数
completeFunction接口调用结束的回调函数(调用成功、失败都会执行)

实例四: 清除本地数据

这里就不详细写了,直接介绍一下这两个清除本地数据的方法。

wx.clearStorage()

wx.clearStorageSync()

直接执行即可实现。

感谢你能够认真阅读完这篇文章,希望小编分享的“微信小程序中本地存储及登录页面处理的实例”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网node.js频道,更多相关知识等着你来学习!

--结束END--

本文标题: 微信小程序中本地存储及登录页面处理的实例

本文链接: https://lsjlt.com/news/70403.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 微信小程序中本地存储及登录页面处理的实例
    这篇文章主要介绍了微信小程序中本地存储及登录页面处理的实例,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。登录界面:在app.json中添加登...
    99+
    2024-04-02
  • 微信小程序实现登录页面
    本文实例为大家分享了微信小程序实现登录页面的具体代码,供大家参考,具体内容如下 实现在进入微信小程序首页前的登录验证页面,这里有两种方法,但其实原理都是一样的。 1. 在首页中加入一...
    99+
    2024-04-02
  • 微信小程序如何实现登录页面
    这篇文章主要讲解了“微信小程序如何实现登录页面”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“微信小程序如何实现登录页面”吧!1. 在首页中加入一个弹窗作为登录窗口,效果如下图:(1)inde...
    99+
    2023-06-30
  • 微信小程序如何处理页面缓存
    微信小程序处理页面缓存的方法: 根据当前时间作为判断依据,缓存数据,代码: Page({   data: {   },   onLoad: function () { ...
    99+
    2024-04-02
  • 微信小程序实现登录界面示例
    本文实例为大家分享了微信小程序实现登录界面的具体代码,供大家参考,具体内容如下 注:这里使用的是原生微信小程序 使用wxss和wxml index.wxml文件中代码 <vie...
    99+
    2024-04-02
  • 微信小程序如何实现本地数据存储
    这篇文章给大家分享的是有关微信小程序如何实现本地数据存储的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。微信小程序 本地数据存储实例详解前言如果您在看此文章之前有过其他程序的开发经...
    99+
    2024-04-02
  • 微信小程序简洁登录页面的实现(附源码)
    目录1.上图2.用户不存在3.上代码 1.上图 2.用户不存在 3.上代码 3.1login.wxml <view class="v1" style="height:...
    99+
    2024-04-02
  • 【微信小程序】-- 案例 - 本地生活(列表页面)(三十)
    💌 所属专栏:【微信小程序开发教程】 😀 作  者:我是夜阑的狗🐶 🚀 个人简介:一个正在努力学技术的CV工程师,专注基础和实战分享 ,欢迎咨询! &...
    99+
    2023-08-21
    微信小程序 生活 小程序
  • 怎么用css实现微信小程序简洁登录页面
    本篇内容介绍了“怎么用css实现微信小程序简洁登录页面”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1.上图2.用户不存在3.上代码1log...
    99+
    2023-06-21
  • jsf实现微信小程序简洁登录页面(附源码)
    上图: 用户不存在:  代码: login.wxml <view class="v1" style="height:{{clientHeightclientHei...
    99+
    2024-04-02
  • js怎么实现实现微信小程序简洁登录页面
    这篇“js怎么实现实现微信小程序简洁登录页面”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“js怎么实现实现微信小程序简洁登录...
    99+
    2023-06-26
  • 微信小程序页面中如何实现保存图片
    小编给大家分享一下微信小程序页面中如何实现保存图片,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! 背...
    99+
    2024-04-02
  • 微信小程序中后台登录的示例分析
    这篇文章主要介绍微信小程序中后台登录的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!微信小程序 后台登录实现效果图:最近写了一个工具类的小程序,按需求要求不要微信提供的微信账...
    99+
    2024-04-02
  • 微信小程序授权登录的优雅处理方式
    前言 当微信小程序项目中涉及到获取用户信息并实现用户登录时,可以通过微信官方提供的登录能力方便地获取微信的用户身份标识,快速建立小程序内的用户体系。官方文档只是提供如何去调用授权登...
    99+
    2024-04-02
  • 微信小程序中的数据存储实现方式
    目录全局变量globalData 页面私有变量 datastorage异步存储(根据设备性能的不同,你还真不知道他会存多久) 同步存储(会造成阻塞~) 文件存储 fileSysteM...
    99+
    2024-04-02
  • 微信小程序中如何实现本地数据缓存功能
    小编给大家分享一下微信小程序中如何实现本地数据缓存功能,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!具体如下:前面介绍了微信小程序获取位置信息操作。这里再来介绍一下微信小程序的本地数据缓存...
    99+
    2024-04-02
  • 微信小程序页面间传值的实现方法示例
    小程序页面间传值 大家晚上好,说晚上好是因为是在晚上写的,说这句话是因为这句话开篇不那么突然。那么小程序的页面间传值,在我使用这段时间里,我就非常的主观的把它们分为wx.navig...
    99+
    2024-04-02
  • 微信小程序中数据存储与取值的示例分析
    这篇文章主要介绍微信小程序中数据存储与取值的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!在小程序开发的过程,经常要需要这个页面输入的数据,在下一个页面中进行取值赋值。比如:...
    99+
    2024-04-02
  • 微信小程序本地存储如何实现每日签到、连续签到功能
    这篇文章给大家分享的是有关微信小程序本地存储如何实现每日签到、连续签到功能的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。先说说相关注意吧:其一就是 storage中只能存放字符串...
    99+
    2024-04-02
  • 微信小程序中如何实现本地图片按照屏幕尺寸处理
    这篇文章主要介绍了微信小程序中如何实现本地图片按照屏幕尺寸处理,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。微信小程序 本地图片按照屏幕尺寸...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作