From 0215123b3762f857c56a4b9e992a2dea86ac10eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E4=B8=9C?= Date: Sun, 15 Oct 2023 23:29:59 +0800 Subject: [PATCH] =?UTF-8?q?=E7=99=BB=E5=BD=95=E6=B3=A8=E5=86=8C=E9=A1=B5?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .umirc.ts | 21 ++- src/api/index.js | 14 +- src/index.less | 9 +- src/pages/Login/index.js | 4 +- src/pages/Login/passwordLogin.js | 10 +- src/pages/Login/verificationCodeLogin.js | 2 +- src/pages/Register/index.js | 162 +++++++++++++++++++++++ 7 files changed, 199 insertions(+), 23 deletions(-) create mode 100644 src/pages/Register/index.js diff --git a/.umirc.ts b/.umirc.ts index 3c053081..2bb54dcc 100644 --- a/.umirc.ts +++ b/.umirc.ts @@ -11,7 +11,7 @@ export default defineConfig({ routes: [ { path: '/', - redirect: '/home', + redirect: '/login', }, { name: '首页', @@ -20,7 +20,7 @@ export default defineConfig({ icon: 'HomeOutlined', }, { - name: ' 基础图层', + name: '基础图层', path: '/baseMap', component: './BaseMap', icon: 'BlockOutlined', @@ -31,12 +31,12 @@ export default defineConfig({ // component: './Access', // }, { - name: ' CRUD 示例', + name: 'CRUD 示例', path: '/table', component: './Table', }, { - name: ' 登录', + name: '登录', path: '/login', component: './Login', // 不展示菜单 @@ -45,7 +45,16 @@ export default defineConfig({ hideInMenu: true, }, { - name: ' 关于我们', + name: '注册', + path: '/register', + component: './Register', + // 不展示菜单 + menuRender: false, + // 不展示在菜单栏里 + hideInMenu: true, + }, + { + name: '关于我们', path: '/about', component: './About', }, @@ -66,7 +75,7 @@ export default defineConfig({ ], proxy: { '/api': { - 'target': 'http://101.42.40.202:8081',//8.142.119.212:8083 + 'target': 'http://localhost:8081',//101.42.40.202:8081 'changeOrigin': true, // 'pathRewrite': { '^/api' : '' }, }, diff --git a/src/api/index.js b/src/api/index.js index 88d6e58d..385441fb 100644 --- a/src/api/index.js +++ b/src/api/index.js @@ -1,10 +1,18 @@ import { request } from '@umijs/max'; // 密码登录 -export function passwordLogin( params ) { +export function passwordLogin( data ) { return request('/api/user/login', { + method: 'POST', + data: data + }); +} + +// 发送注册验证短信 +export function registerSms( params ) { + return request('/api/user/registerSms', { method: 'GET', - params: params, + params: params }); } @@ -20,6 +28,6 @@ export function queryUserMenu() { export function getLayerPoints( params ) { return request('/api/basicMap/getLayerPoints', { method: 'GET', - params: params, + params: params }); } diff --git a/src/index.less b/src/index.less index 9a8ce6d9..6bde4188 100644 --- a/src/index.less +++ b/src/index.less @@ -56,13 +56,12 @@ body { height: 42px; } #login_page input { - font-size: 22px; + font-size: 18px !important; box-shadow: none; } -#login_page .ant-form-item-required, #login_page input{ - color: #A7B0BC; - -} +// #login_page .ant-form-item-required, #login_page input{ +// color: #A7B0BC; +// } #login_page .ant-form-item-required, #login_page input, #login_page .ant-btn{ font-size: 22px; font-family: Source Han Sans CN-Regular, Source Han Sans CN; diff --git a/src/pages/Login/index.js b/src/pages/Login/index.js index 1734454a..daf94b19 100644 --- a/src/pages/Login/index.js +++ b/src/pages/Login/index.js @@ -1,3 +1,4 @@ +import { useState } from 'react'; import { Tabs } from 'antd'; import PasswordLogin from './passwordLogin'; import VerificationCodeLogin from './verificationCodeLogin'; @@ -11,9 +12,6 @@ function Login (e) { - - - diff --git a/src/pages/Login/passwordLogin.js b/src/pages/Login/passwordLogin.js index f7cec6dc..1b63c18b 100644 --- a/src/pages/Login/passwordLogin.js +++ b/src/pages/Login/passwordLogin.js @@ -18,9 +18,9 @@ function Login (e) { // } passwordLogin({username: values.username, password: values.password}).then((e) => { if (!e.success) { - message.error('登录失败'); + message.error(e.message); } else { - navigate('/Home'); + navigate('/home'); // cookie.save('username', 'wyd'); } }) @@ -79,18 +79,18 @@ function Login (e) { - 同意服务条款 忘记密码? - + */} - 新用户注册 + 新用户注册 ); diff --git a/src/pages/Login/verificationCodeLogin.js b/src/pages/Login/verificationCodeLogin.js index 4982be30..79116070 100644 --- a/src/pages/Login/verificationCodeLogin.js +++ b/src/pages/Login/verificationCodeLogin.js @@ -29,7 +29,7 @@ function VerificationCodeLogin (e) { } let onFinish = (values) => { - passwordLogin({username: values.username, password: values.password}).then((e) => { + passwordLogin({values}).then((e) => { if (!e.success) { message.error('登录失败'); } else { diff --git a/src/pages/Register/index.js b/src/pages/Register/index.js new file mode 100644 index 00000000..e81139c6 --- /dev/null +++ b/src/pages/Register/index.js @@ -0,0 +1,162 @@ +import { useState } from 'react'; +import { Form, Input, Button, Checkbox, message, Col, Row, Tag, Tabs } from 'antd'; +import '../../index.less'; +import { useNavigate } from 'react-router-dom'; +import { registerSms } from '../../api'; + +function Register(e) { + + let navigate = useNavigate(); + let [code, setCode] = useState('获取验证码'); + let [coding, setCoding] = useState(false); + let [mobile, setMobile] = useState(''); + const [form] = Form.useForm(); + let onMobileChange = (e) => { + let val = e.target.value; + setMobile(val) + } + // 点击获取验证码 + let getCheckCode = (values) => {debugger + // e.preventDefault(); + // 请求发送验证码接口,请求成功开始倒计时 + registerSms({'phone': mobile}).then((e) => { + if (!e.success) { + message.error(e.message); + } else { + countDown(60); + } + }) + } + // 倒计时 + let countDown = (code) => { + let count = parseFloat(code); + if (code === 1) { + setCode('获取验证码'); + setCoding(false); + } else { + count = count - 1; + setCoding(true); + setCode(`${count}s后重新发送`) + setTimeout(countDown, 1000, count); + } + } + let onFinish = async (values) => { + register({ + username: values.username, + password: values.password + }).then((e) => { + if (!e.success) { + message.error(e.message); + } else { + message.success("注册成功"); + navigate('/login'); + } + }) + }; + let onFinishFailed = (errorInfo) => { + console.log('Failed:', errorInfo); + }; + + return ( +
+
+ + +
+ + + + + + + + + + + + + + + + + + 同意服务条款 + + + + + 前往登录 + +
+
+
+
+
+ ); +} + + +export default Register; \ No newline at end of file