当前位置: 首页 > news >正文

创新项目实训开发日志4

一、开发简介

核心工作内容:logo实现、注册实现、登录实现、上传gitee

工作时间:第十周

二、logo实现

1.设计logo

2.添加logo

const logoUrl = new URL('@/assets/images/logo.png', import.meta.url).href
<div class="aside-first"><el-image  :src="logoUrl" :fit="'scale-down'" />
</div>
.aside-first {@include hold(100, 10);@include position-center-box("row,column");}

三、注册实现

1.配置后端

  • 下载后端代码
  • 配置MySql数据库
  • 利用Postman测试后端功能

2.页面开发

<!--注册抽屉--><el-drawer v-model="drawer" :direction="direction"><el-form ref="registerForm" :model="registerData" :rules="registerRules"  label-width="80px"><el-form-item label="手机号" prop="phone"><el-input v-model="registerData.phone" placeholder="请输入手机号" /></el-form-item><el-form-item label="密码" prop="password"><el-input v-model="registerData.password" placeholder="请输入密码" show-password /></el-form-item><el-form-item label="姓名" prop="name"><el-input v-model="registerData.name" placeholder="请输入姓名" /></el-form-item><el-form-item><el-button type="primary" @click="resister">注册</el-button><el-button @click="drawer = false">取消</el-button></el-form-item></el-form></el-drawer>

3.定义API

/*** @description: 用于用户的注册* @return {Promise<>} - 返回Promise*/
export const registerService = (conditions) => {return request.post('/auth/register', conditions, {headers: {'Content-Type': 'application/json'}});
}

4.事件处理

//注册——抽屉显示
const drawer = ref(false)
//注册——抽屉方向
const direction = ref("rtl")
//注册——表单
const registerForm = ref(null)
//注册——数据
const registerData = ref({phone: '',password: '',name: ''
})
//校验规则——注册
const registerRules = {phone: [{ required: true, message: '请输入手机号', trigger: 'blur' }],password: [{ required: true, message: '请输入密码', trigger: 'blur' }],name: [{ required: true, message: '请输入姓名', trigger: 'blur' }]
}
/*** @description: 用于用户的注册* @return {Promise<>} - 提示操作的结果*/
const register = async () => {// 先验证表单const valid = await registerForm.value.validate();if (valid) {try {// 调用注册服务const result = await registerService(registerData.value);// 成功后提示ElMessage.success('注册成功');} catch (error) {// 捕获并处理可能的错误console.error('注册过程中出现错误:', error);// ElMessage.error('注册失败,请稍后再试');}} else {// 如果验证失败,提示用户检查表单信息ElMessage.error('请检查表单信息');}
};

四、登录实现

1.页面开发

<template><div id="background"><el-row id="login"><!--左表格--><el-col :span="9" id="left"><div id="avatar"><el-avatar :size="150" :src="circleUrl" fit="cover"/></div><el-text id="WELCOME">WELCOME</el-text></el-col><!--右表格--><el-col :span="15" id="right"><el-form ref="loginForm" size="large" autocomplete="off" :model="loginData" :rules="loginRules"><!--手机号--><el-form-item prop="phone" id="inputPhone"><!-- <el-input :prefix-icon="User" placeholder="请输入手机号" v-model="registerData.phone" class="rounded-input" input-styles="border-radius: 15px;"></el-input> --><input class="rounded-input" placeholder=" 手机号:" v-model="loginData.phone"></el-form-item><!--密码--><el-form-item prop="password" id="inputPassword"><!-- <el-input name="password" type="password" :prefix-icon="Lock" placeholder="请输入密码"v-model="registerData.password"></el-input> --><input type="password" class="rounded-input" placeholder=" 密  码:" v-model="loginData.password"></el-form-item><!--功能区块--><el-form-item class="flex"><div class="flex"><button  class="registerButton" type="button" @click="drawer = true">注册账号</button><el-link :underline="false" style="color: #FFFFFF;">重置密码?</el-link></div></el-form-item><!-- 登录按钮 --><el-form-item id="loginButton"><el-button id="button1" @click="login">立 即 登 录</el-button></el-form-item></el-form></el-col><!--注册抽屉--><el-drawer v-model="drawer" :direction="direction"><el-form ref="registerForm" :model="registerData" :rules="registerRules"  label-width="80px"><el-form-item label="手机号" prop="phone"><el-input v-model="registerData.phone" placeholder="请输入手机号" /></el-form-item><el-form-item label="密码" prop="password"><el-input v-model="registerData.password" placeholder="请输入密码" show-password /></el-form-item><el-form-item label="姓名" prop="name"><el-input v-model="registerData.name" placeholder="请输入姓名" /></el-form-item><el-form-item><el-button type="primary" @click="register">注册</el-button><el-button @click="drawer = false">取消</el-button></el-form-item></el-form></el-drawer></el-row></div>
</template>

2.定义API

/*** @description: 用于用户的登录* @return {Promise<>} - 返回Promise*/
export const loginService = (conditions) => {return request.post('/auth/login', conditions, {headers: {'Content-Type': 'application/json'}});
}

3.事件处理

/*** @description: 用于用户的登录* @return {Promise<>} - 提示操作的结果*/
const login = async () => {// 先验证表单const valid = await loginForm.value.validate();if (valid) {try {// 调用登录服务const result = await loginService(registerData.value);console.log(result)// 成功后提示tokenStore.setToken(result.data);router.push('/home')ElMessage.success('登录成功');} catch (error) {// 捕获并处理可能的错误console.error('登录过程中出现错误:', error);// ElMessage.error('登录失败,请稍后再试');}} else {// 如果验证失败,提示用户检查表单信息ElMessage.error('请检查表单信息');}
};

五、上传gitee

1.上传logo相关

2.上传认证相关

3.将web分支并入master分支

相关文章:

  • 第十七届山东省职业院校技能大赛 中职组网络建设与运维赛项
  • 一天学完Servlet!!!(万字总结)
  • 第五章:Framework/Tooling Abstraction
  • CS144 Lab5 实战记录:网络接口实现 ARP
  • Spring Boot Controller 单元测试撰写
  • Git删除指定历史版本
  • 快速配置linux远程开发-go语言
  • Docker部署DeepSeek常见问题及解决方案
  • 实战交易策略 篇十九:君山居士熊市交易策略
  • 机器学习 Day14 XGboost(极端梯度提升树)算法
  • 得物业务参数配置中心架构综述
  • 大语言模型之提示词技巧
  • Tomcat:从零理解Java Web应用的“心脏”
  • 路由交换网络专题 | 第七章 | BGP练习 | 次优路径 | Route-Policy | BGP认证
  • Typecho 访客统计插件最新版-前后台统计图均可显示
  • 搭建私人网站
  • 香港国际视角下的资金路径识别与结构研判
  • 数理逻辑基础 | 命题逻辑 / 谓词逻辑 / 命题符号化
  • nodejs之Express-介绍、路由
  • Godot开发2D冒险游戏——第二节:主角光环整起来!
  • 记录发生真相,南沙岛礁生态调查纪实片《归巢》发布
  • 国新办发布会丨2024年市监部门查办知产领域侵权行政违法案件4.4万件
  • 海上生明月,九天揽星河,2025年“中国航天日”主场活动在上海启动
  • 夜读丨修车与“不凑合”
  • 2025一季度,上海有两把刷子
  • 云南大理州洱源县发生4.8级地震,震源深度10千米