import React from 'react'; import {Form, Input, Icon, Button, Tabs, Modal} from 'antd'; import styles from './login.module.css'; import history from 'libs/history'; import {http} from 'libs'; import logo from 'layout/logo.svg'; class LoginIndex extends React.Component { constructor(props) { super(props); this.state = { loading: false, loginType: 'default' } } handleSubmit = () => { this.props.form.validateFields((err, formData) => { if (!err) { this.setState({loading: true}); http.post('/api/account/login/', formData) .then(data => { if (!data['has_real_ip']) { Modal.warning({ title: '安全警告', className: styles.tips, content:
未能获取到客户端的真实IP,无法提供基于请求来源IP的合法性验证,详细信息请参考 官方文档
, onOk: () => this.doLogin(data) }) } else { this.doLogin(data) } }, () => this.setState({loading: false})) } }) }; doLogin = (data) => { localStorage.setItem('token', data['access_token']); localStorage.setItem('nickname', data['nickname']); localStorage.setItem('is_supper', data['is_supper']); if (history.location.state && history.location.state['from']) { history.push(history.location.state['from']) } else { history.push('/home') } }; render() { const {getFieldDecorator} = this.props.form; return (
logoSpug devops
Open source O & M management system by openspug
this.setState({loginType: e})}>
{getFieldDecorator('username', {rules: [{required: true, message: '请输入账户'}]})( }/> )} {getFieldDecorator('password', {rules: [{required: true, message: '请输入密码'}]})( }/> )}
Copyright 2019 By Open Spug
) } } export default Form.create()(LoginIndex)