微信小程序之登录页-------实例

article/2025/10/8 10:49:39

最近在学习微信小程序,下面提供自己做的微信小程序登录页面,仅供参考。

效果图:

 

目录结构:

图片:

  

 

name.png

 key.png

下面是代码:

login.wxml:

<!--pages/login/login.wxml-->
<view class="container"> <view class="login-icon">  <image class="login-img" src="/images/logo.png"></image>  </view>  <view class="login-from">  <form bindsubmit="formSubmit" class='form'><view class="myno"><!-- 学号 --><view class="weui-cell weui-cell_input"><image class="nameImage" src="/images/name.png"></image><!-- <view class="weui-cell__hd"><view class="weui-label">学号</view></view> --><view class="weui-cell__bd"><input class="weui-input" name="no" bindinput="noinput" value='{{no}}' placeholder="请输入学号" /></view></view></view><view class="mypwd"><!-- 密码 --><view class="weui-cell weui-cell_input"><image class="nameImage" src="/images/key.png"></image><!-- <view class="weui-cell__hd"><view class="weui-label">密码</view></view> --><view class="weui-cell__bd"><input class="weui-input" type="password" name="pwd" bindinput="pwdinput" placeholder="请输入密码" value='{{pwd}}'/></view></view></view><!--按钮-->  <view class="loginBtnView">  <button class="loginBtn" size="{{primarySize}}"  form-type='submit' disabled='{{disabled}}'>登录</button>  </view>  </form></view>  
</view>  

login.wxss:

/* pages/login/login.wxss */
page{height: 100%;background-size:100%;background-image: url('http://songlijuan.top/bk2.jpg');
}.container {height: 100%;display: flex;flex-direction: column;padding: 0;box-sizing: border-box;/* background-color: #f2f2f2;     */
} /*登录图片*/
.login-icon{flex: none;margin: 0 auto;margin-top: 200rpx;
}
.login-img{width: 220rpx;height: 220rpx;border-radius: 110rpx;opacity: 0.6;
}/*表单内容*/
.login-from {margin-top: 90px;flex: auto;height:100%;
}/* 输入框 */
.myno{width: 90%;height: 80rpx;margin: 0 auto;border:1px solid #ccc;border-radius: 50rpx;}
.mypwd{width: 90%;height: 80rpx;margin: 0 auto;border:1px solid #ccc;border-radius: 50rpx;margin-top: 20rpx;
}
/*按钮*/
.loginBtnView {margin-top: 0px;margin-bottom: 0px;padding-bottom: 0px;
}.loginBtn {width: 90%;height: 80rpx;line-height: 80rpx;margin-top: 35px;color: #fff;background-color:#7e8ef0;border: 0.1rpx solid #ccc;border-radius: 40rpx;
}.nameImage, .keyImage {margin-right: 10px;width: 14px;height: 14px
}

login.js

// pages/login/login.js
const app = getApp()
Page({/*** 页面的初始数据*/data: {disabled:false,no:'',pwd:'',noinput:false,pwdinput:false,},noinput:function(e){this.setData({no:e.detail.value});this.setData({noinput:true});if(this.data.noinput==true && this.data.pwdinput==true){this.setData({ disabled: false });}},pwdinput: function (e) {this.setData({ pwd: e.detail.value });this.setData({ pwdinput: true });if (this.data.noinput == true && this.data.pwdinput == true) {this.setData({ disabled: false });}},formSubmit: function (e) {wx.showLoading({title: '登录中...',})console.log(e);this.setData({ disabled: true});wx.request({url: app.globalData.url.login, //仅为示例,并非真实的接口地址data: {no: e.detail.value.no,pwd: e.detail.value.pwd},header: {'content-type': 'application/json' // 默认值},success: function (res) {console.log(res);if (res.statusCode == 200) {if (res.data.error == true) {wx.showToast({title: res.data.msg,icon: 'none',duration: 2000})} else {wx.setStorageSync('student', res.data.data);wx.showToast({title: res.data.msg,icon: 'success',duration: 2000})setTimeout(function(){wx.switchTab({url: '../teacher/teacher',})},2000)}}else{wx.showToast({title: '服务器出现错误',icon: 'none',duration: 2000})}}})},/*** 生命周期函数--监听页面加载*/onLoad: function (options) {this.setData({disabled:false});var student = wx.getStorageSync('student');if (typeof (student) == 'object' && student.no != '' && student.classid != '') {wx.switchTab({url: '../teacher/teacher',})}},/*** 生命周期函数--监听页面初次渲染完成*/onReady: function () {},/*** 生命周期函数--监听页面显示*/onShow: function () {if(this.data.no=='' || this.data.pwd==''){this.setData({ disabled: true });}else{this.setData({ disabled: false });}},/*** 生命周期函数--监听页面隐藏*/onHide: function () {},/*** 生命周期函数--监听页面卸载*/onUnload: function () {},/*** 页面相关事件处理函数--监听用户下拉动作*/onPullDownRefresh: function () {},/*** 页面上拉触底事件的处理函数*/onReachBottom: function () {},/*** 用户点击右上角分享*/onShareAppMessage: function () {}
})

我引用了weui的样式,大家可以参考下weui的样式,下载weui并引用。

后台控制器的代码只需要查下数据库里面的信息就可以了;


http://chatgpt.dhexx.cn/article/uJQtYHYf.shtml

相关文章

微信小程序的登录流程

基本流程&#xff1a; 1、调用 wx.login() 获取 临时登录凭证code &#xff0c;并回传到开发者服务器。 2、调用 auth.code2Session 接口&#xff08;本接口应在服务器端调用&#xff09;&#xff0c;换取 用户唯一标识 OpenID 、 用户在微信开放平台帐号下的唯一标识 UnionID&…

微信小程序实现登录页面

wxml文件&#xff1a; <view class"container"> <view class"login-icon"> <image class"login-img" src"../../img/loginLog.jpg"></image> </view> <view class"login-from"> <!…

微信小程序入门(登录页面)

1.首先前往开发者工具下载安装开发工具&#xff1a; 2.安装后微信扫码&#xff0c;并填写自己的AppID选择自己的项目目录后登录&#xff1a; 登陆后点击工具上的编译按钮&#xff0c;可以在工具的左侧模拟器界面看到这个小程序的表现&#xff0c;也可以点击预览按钮&#xff0c…

微信小程序之登录注册界面的实现

初步分析&#xff0c;程序一共有两个界面即&#xff1a;登录界面和注册界面。 但是注册的时候由于不同的注册方式应该有不同的界面支持&#xff0c;故在本程序中我们要写两个注册界面和一个登录界面&#xff0c;两个注册界面分别位手机注册界面和企业用户注册界面。 在微信小程…

微信小程序之登录

目录 1、登录流程时序 1.1、wx.login(Object object) 1.1.1、功能描述 1.1.2、参数 1.1.3、object.success 回调函数 1.2、auth.code2Session 1.2.1、请求地址 1.2.2、请求参数 1.2.3、返回值 2、使用微信登录 2.1、小程序端js文件 2.2、云函数端js文件 3、获取手机…

微信小程序 16 登录界面

16.1 登录界面 html <view class"container"><view class"wrapper"><view class"left-top-sign">LOGIN</view><view class"welcome">欢迎回来&#xff01;</view><view class"input-con…

微信小程序登录注册界面

微信小程序登录注册界面demo,存在不足之处,请指教! 界面图片&#xff1a; 1.js代码&#xff1a; Page({/*** 页面的初始数据*/data: {current:1,codeText:获取验证码,counting:false,},// 登陆注册监听click(e){let index e.currentTarget.dataset.code;this.setData({cur…

微信小程序登录界面的实现

首先是未登录时的界面&#xff0c;提示用户登录之后使用全部的功能。 用户点击登录&#xff0c;调用API拿到用户的信息并在页面中显示出来&#xff0c;同时将用户的信息保存在本地。向后端发送POST请求&#xff0c;拿到code&#xff0c;拿到token&#xff0c;并保存在本地&…

(一)微信小程序云开发之登录界面设计

最近在开发微信小程序&#xff0c;现阶段采用的云开发的方式。云开发与使用本地服务器开发还存在着一定的差异。本地服务器的开发后续记录。这里并没有记录微信小程序的云开发项目的创建方式。 先对微信小程序简单的登录界面做出实例。 1、登录界面UI 2、代码 2.1wxml login…

微信小程序开发(2)—— 简单的页面登陆实现

微信小程序开发&#xff08;2&#xff09; 二、简单的登陆实现&#xff08;非授权登录&#xff09;新建文件夹进入login.wxml界面进入login.wxss进入login.js进入json进入app.json效果图 二、简单的登陆实现&#xff08;非授权登录&#xff09; 新建文件夹 文件夹内新建js、wx…

微信小程序简洁登录页面(附源码)

文章目录 1.登录页面2.用户不存在3.代码3.1 login.wxml3.2 login.css3.3 login.js 4*斜体样式*.总结 1.登录页面 登录的具体流程 1.当用户输入密码和账号后首先检验账号和密码是否为空 2.若不为空&#xff0c;则将输入的账号发送到后端&#xff0c;首先判断账号是否存在 3.若账…

接口压力测试脚本

performance.py #构造性能测试基类 import re import time import requests import threading #初始化url、method&#xff08;默认get&#xff09;、header&#xff08;默认为空字典&#xff09;等参数, #这里Performance类重写父类threading.Thread的__init__方法,会覆盖父类…

超实用压力测试工具-ab工具

写在前面 在学习ab工具之前&#xff0c;我们需了解几个关于压力测试的概念 吞吐率&#xff08;Requests per second&#xff09; 概念&#xff1a;服务器并发处理能力的量化描述&#xff0c;单位是reqs/s&#xff0c;指的是某个并发用户数下单位时间内处理的请求数。某个并发用…

接口压测测试

Jmeter测试接口&#xff08;包括登陆操作&#xff09; 创建HTTP Request先登录参考&#xff1a; http://blog.csdn.net/ab_2016/article/details/78249686 注意&#xff1a;勾选FollowRedirects 自动重定向Redirect Automatically&#xff1a;HttpClient接收到请求后&#x…

接口测试及常用接口测试工具

首先&#xff0c;什么是接口呢&#xff1f; 接口一般来说有两种&#xff0c;一种是程序内部的接口&#xff0c;一种是系统对外的接口。 系统对外的接口&#xff1a;比如你要从别的网站或服务器上获取资源或信息&#xff0c;别人肯定不会把数据库共享给你&#xff0c;他只能给你…

【接口压测】

感悟 最近在做的项目中,需要去做核心接口的压测工作,初次在实际项目中进行接口压测,本人属实有点慌张. 在经历了几周的时间,自己的压测脚本,从最初的单线程,变成多线程,最后又通过协程的方式去实现. 接口压测,首先需要去选择一款适合自己的压测工具,jmeter,loadrunner,locust等…

Postman 接口压力测试

第一步&#xff1a;点击Collections中的 按钮新增一个Collection 第二步&#xff1a;新增一个 request 第三步&#xff08;可选&#xff09;&#xff1a;可以分别对 collection 和 request 进行重命名 第四步&#xff1a;修改 request 中的 RequestBody 以及 URL&#xff0c;…

常用的接口测试工具有哪些?

点击上方“朱小厮的博客”&#xff0c;选择“设为星标” 后台回复"加群"&#xff0c;加入新技术群 来源&#xff1a;8rr.co/nxMW Poster 这是火狐浏览器的一个插件&#xff0c;如果你想调试服务器&#xff0c;发出HTTP请求&#xff0c;Poster操作简单&#xff0c;你先…

接口测试工具

一、Apifox和Postman各自的定义 1、Postman是一款支持http协议的接口调试与测试工具&#xff0c;其主要特点就是功能强大&#xff0c;使用简单且易用性好 。无论是开发人员进行接口调试&#xff0c;还是测试人员做接口测试&#xff0c;postman都是我们的首选工具之一 。 2、A…