import React, { Component } from 'react'; import { Button, Form, Input, Layout, PageHeader, Image } from "antd"; import { itemRender } from '../../utils/utils' import request from "../../common/request"; import { message } from "antd/es"; import Logout from "./Logout"; const { Content } = Layout; const routes = [ { path: '', breadcrumbName: '首页', }, { path: 'info', breadcrumbName: '个人中心', } ]; const formItemLayout = { labelCol: { span: 3 }, wrapperCol: { span: 6 }, }; const formTailLayout = { labelCol: { span: 3 }, wrapperCol: { span: 6, offset: 3 }, }; class Info extends Component { state = {} passwordFormRef = React.createRef(); onNewPasswordChange(value) { this.setState({ 'newPassword': value.target.value }) } onNewPassword2Change = (value) => { this.setState({ ...this.validateNewPassword(value.target.value), 'newPassword2': value.target.value }) } validateNewPassword = (newPassword2) => { if (newPassword2 === this.state.newPassword) { return { validateStatus: 'success', errorMsg: null, }; } return { validateStatus: 'error', errorMsg: '两次输入的密码不一致', }; } changePassword = async (values) => { let result = await request.post('/change-password', values); if (result.code === 1) { message.success('密码修改成功,即将跳转至登录页面'); window.location.href = '/#'; } else { message.error(result.message); } } confirmTOTP = async (values) => { values['secret'] = this.state.secret let result = await request.post('/confirm-totp', values); if (result.code === 1) { message.success('TOTP启用成功'); this.setState({ qr: "", secret: "" }) } else { message.error(result.message); } } resetTOTP = async () => { let result = await request.post('/reset-totp'); if (result.code === 1) { this.setState({ qr: result.data.qr, secret: result.data.secret, }) } else { message.error(result.message); } } render() { return ( <> ]} subTitle="个人中心" />

修改密码

this.onNewPasswordChange(value)} /> this.onNewPassword2Change(value)} />

双因素认证

); } } export default Info;