微信小程序开发笔记—设置页面密码

简介: 本文主要介绍了微信小程序实现设置页面密码的功能实现

一、功能概述

要实现的功能是给想要访问的页面设置一个密码,输入密码后如果密码错误,会提示密码错误,正确会直接进入页面。

二、实现效果

可以先看一下底部导航栏

479b8fe1b82caffb225e4b147a55830f_08f48601376f45f5bee8347b77d3863a.png

本人的需求是想要把小程序分成三个大板块,中间是共享页面,两边是个人页面,点击个人的底部导航栏按键时会进入个人登陆页面,需要在个人登录页面输入密码才能访问个人页面。

进入个人登录页面后的内容如下图

957c22b8f893a86cf0e2b7d8590e2c29_0c5eaa5a88ed4064a8cefed58e809888.png

这里并没有让input输入框的边框显示出来,具体怎么让边框显示出来以及有哪些样式,可以在input的style中设置outline-style,关于outline-style的概要可以点击超链接看一下,这里就不再做介绍。

在个人登录页面输入密码后可以正常进入,如果密码错误会有相应的提示,如下图所示

becc06a57b7aaed2397f8a12ecde6058_ed2ff0aba15445f9818c1bcde6609070.png

三、实现方法

看完实现效果,接下来说一下如何实现,实现时主要用到了input、button,其次还用到了wx.showToast函数。

1、新建个人登陆页面

在进入个人页面之前,需要有一个个人登录页面,因此需要新建一个,关于如何快速新建页面,可以看一下关于底部导航栏如何实现的文章微信小程序开发笔记二—底部导航栏tabar

2、设计密码获取判别函数和响应函数

1)定义变量

在新建的的个人登陆页面的.ts文件中定义变量

data: {
    lin_pswd:'',
    lin_pswd_judge:'',
  },

其中lin_pswd用于获取input输入的密码,lin_pswd_judge用于指示判别结果。

2)设计密码获取判别函数

get_lin_pswd:function(e:any){
    let lin_pswd = e.detail.value;   // 获取输入结果
    if (lin_pswd == 960404){   // 密码判断
      this.data.lin_pswd_judge = '0'
    }
    else{
      this.data.lin_pswd_judge = ''
    }
  },

该函数的大概意思就是先利用lin_pswd获取文本框输入内容,然后判别是否正确,如果正确就会将判别结果变量lin_pswd_judge赋值为0,否则就给判别结果变量赋值为空。

3)设计响应函数

设计完密码获取判别函数后,需要对不同的判别结果做出响应,如果密码正确,则跳转进入个人页面,如果不正确会提示密码错误,具体实现程序如下

judge_lin_pswd:function(){
    let lin_pswd_judge = this.data.lin_pswd_judge
    this.setData({   // 清除文本框内容
      lin_pswd: '',
    })
    
    if (lin_pswd_judge == '0'){
      wx.navigateTo({url:'/pages/lin/lin'})
      this.setData({   // 清空判断结果
        lin_pswd_judge: '',
      })
    }
    else{
      wx.showToast({
        title: '密码错误',
        icon: 'none',   // sucess:成功;error:失败;loading:加载;none:不显示
        image: '/image/password_error.png',   // 图片路径优先级高于icon
        duration: 2000   // 提示的延迟时间
      })
    }
  },

该函数是在button按下后执行的,因此首先无论密码正不正确会先将文本框输入的内容清空,清空之后判别lin_pswd_judge的值,如果是0,说明密码输入正确,会先接跳转到个人页面,然后清空变量lin_pswd_judge,防止出现在进入个人页面退出后不输入密码再次点击登录会直接进入的情况。如果密码输入错误,会利用wx.showToast函数提示,提示的图片和文字都可以自己修改,详见微信官方文档介绍。

3、设计页面内容

完成以上变量定义和函数设计后就可以着手个人登陆页面设计了,这部分代码都在.wxml文件中。

1)input组件设计

按照惯例,先上程序

 <input style="width: 330rpx; height: 73rpx; display: block; box-sizing: border-box;text-align: center; outline-style: none;" type="text" placeholder="请输入密码" focus="true" maxlength="6" password="{{!open}}" bindinput="get_lin_pswd" value="{{lin_pswd}}"/>

这里只简单介绍和一下其中用到的一些关键的属性,其他的可以参考一下微信官方文档对于input的介绍。

  • type设置输入的类型

这里设置为text,点击文本输入框后会直接拉出手机的文本输入键盘,如果将text改程number,则点击文本输入框后会拉出手机的数字输入键盘。

  • placeholder设置输入框为空是的内容

这里写入的是请输入密码

  • maxlength设置最大输入长度
  • bindinput指示的为键盘输入时触发的函数
  • value为输入的内容

这里把value设置成密码判别时的变量,主要是为了方便在点击登陆后能够及时清除文本框中的输入内容。

2)button组件设计

button组件程序如下

 <button class="lin_button_enter" type="primary" plain="true" bindtap="judge_lin_pswd" style="position: relative; left: 2rpx; top: 104rpx">进入专属空间</button>

这里也不对button组件做过多的介绍,可以去微信官方文档搜索。

这里用到的关键属性有以下几个

  • plain设置按钮是否镂空(背景色透明)
  • bindtap按键按下后执行的函数

四、总结

以上就是设置页面密码的整个实现流程,如果你成功了麻烦点个赞呀,这里总结一下实现这项功能时遇到的问题以及后续的优化方向。

1、实现过程中遇到的问题

由于本人从未接触过微信小程序开发的内容,也没有学习过前端的知识,所以整个实现过程中遇到了很多问题,除去最开始的怎么实现按键跳转,怎么设置文本框属性这些以外,遇到的问题主要有以下几点

1)如何获取文本框输入内容?
2)如何实现密码判别?
3)如何在密码错误时提示?
4)如何在点击登陆后清除文本框输入内容?

获取文本框输入内容的方法比较粗陋,如果有其他方法请留言,作为小白的我非常想了解以下。其次对于如何清除文本框内容也是在冲浪过后跟着大佬们学习的。

2、后续优化方向

目前只是实现了简单的登录功能,但是还有很多可以优化的地方,主要想到了以下几点

1)设置一个小眼睛,可以控制输入内容是否可见;
2)添加一个密码重置功能;

相关文章
|
消息中间件 人工智能 Java
抖音微信爆款小游戏大全:免费休闲/竞技/益智/PHP+Java全筏开源开发
本文基于2025年最新行业数据,深入解析抖音/微信爆款小游戏的开发逻辑,重点讲解PHP+Java双引擎架构实战,涵盖技术选型、架构设计、性能优化与开源生态,提供完整开源工具链,助力开发者从理论到落地打造高留存、高并发的小游戏产品。
|
小程序 前端开发 Android开发
小程序微信分享功能如何开发?开放平台已绑定仍不能使用的问题?-优雅草卓伊凡
小程序微信分享功能如何开发?开放平台已绑定仍不能使用的问题?-优雅草卓伊凡
2914 29
小程序微信分享功能如何开发?开放平台已绑定仍不能使用的问题?-优雅草卓伊凡
|
小程序 JavaScript API
uni-halo + 微信小程序开发实录:我的第一个作品诞生记
这篇文章介绍了使用uni-halo框架进行微信小程序开发的过程,包括选择该框架的原因、开发目标以及项目配置和部署的步骤。
744 0
uni-halo + 微信小程序开发实录:我的第一个作品诞生记
|
人工智能 自然语言处理 小程序
技术小白如何利用DeepSeek半小时开发微信小程序?
通过通义灵码的“AI程序员”功能,即使没有编程基础也能轻松创建小程序或网页。借助DeepSeek V3和R1满血版模型,用户只需用自然语言描述需求,就能自动生成代码并优化程序。例如,一个文科生仅通过描述需求就成功开发了一款记录日常活动的微信小程序。此外,通义灵码还提供智能问答模式,帮助用户解决开发中的各种问题,极大简化了开发流程,让普通人的开发体验更加顺畅。
4284 11
技术小白如何利用DeepSeek半小时开发微信小程序?
|
小程序 Java 关系型数据库
weixin163基于微信小程序的校园二手交易平台系统设计与开发ssm(文档+源码)_kaic
本文介绍了一款基于微信小程序的校园二手物品交易平台的开发与实现。该平台采用Java语言开发服务端,使用MySQL数据库进行数据存储,前端以微信小程序为载体,支持管理员和学生两种角色操作。管理员可管理用户、商品分类及信息、交易记录等,而学生则能注册登录、发布购买商品、参与交流论坛等。系统设计注重交互性和安全性,通过SSM框架优化开发流程,确保高效稳定运行,满足用户便捷交易的需求,推动校园资源共享与循环利用。
|
小程序 JavaScript 前端开发
微信小程序开发全流程:从注册到上线的完整指南
这篇文章详细记录了微信小程序的完整开发到最终上线的每一个步骤。适合对小程序开发感兴趣的个人开发者或希望了解完整流程的学习者,涵盖了云开发、事件绑定、生命周期管理、组件使用等关键内容。
25764 14
|
小程序 关系型数据库 Java
weixin168“返家乡”高校暑期社会实践微信小程序设计与开发ssm(文档+源码)_kaic
本文探讨高校暑期社会实践微信小程序的开发与应用,旨在通过信息化手段提升活动管理效率。借助微信小程序技术、SSM框架及MySQL数据库,实现信息共享、流程规范和操作便捷。系统涵盖需求分析、可行性研究、设计实现等环节,确保技术可行、操作简便且经济合理。最终,该小程序可优化活动发布、学生信息管理和心得交流等功能,降低管理成本并提高工作效率。
|
自然语言处理 搜索推荐 小程序
微信公众号接口:解锁公众号开发的无限可能
微信公众号接口是微信官方提供的API,支持开发者通过编程与公众号交互,实现自动回复、消息管理、用户管理和数据分析等功能。本文深入探讨接口的定义、类型、优势及应用场景,如智能客服、内容分发、电商闭环等,并介绍开发流程和工具,帮助运营者提升用户体验和效率。未来,随着微信生态的发展,公众号接口将带来更多机遇,如小程序融合、AI应用等。
|
JSON 小程序 JavaScript
uni-app开发微信小程序的报错[渲染层错误]排查及解决
uni-app开发微信小程序的报错[渲染层错误]排查及解决
5016 7
|
小程序 前端开发 测试技术
微信小程序的开发完整流程是什么?
微信小程序的开发完整流程是什么?
2744 7