'use strict'; import React, { useEffect, useRef } from 'react'; import { connect } from 'react-redux'; import { push } from 'react-router-redux'; import { Form, Button, Toast } from '@douyinfe/semi-ui'; import { login, LOGIN_SUCCESS } from '../actions/auth'; import { IconLock, IconUser } from '@douyinfe/semi-icons'; import '../style.less' const Login = props => { const { dispatch, user, error, actions, apiRoot, isRequesting } = props const form = useRef(); useEffect(() => { if (error) { Toast.error(error); form.current.setValue('password', '') } }, [error]) useEffect(() => { if (user && user.authorized) { dispatch(push('/businessManagement/pmReport/reserveItemsReporting')); localStorage.setItem('poms_open_sider', JSON.stringify(["pmReport"])) localStorage.setItem('poms_selected_sider', JSON.stringify(["businessManagement"])) } }, [user]) return (
{/* */}
数据报表中心
{ dispatch(login(values.username, values.password)).then(res => { const data = res.payload.user localStorage.setItem('word', JSON.stringify(values.password)) dispatch(actions.layout.initWebSocket({ ioUrl: apiRoot, token: data.token, dcUserId: data.dcUserInfo && dcUserInfo.id })) }) }} getFormApi={formApi => form.current = formApi} > } style={{ background: '#FFFFFF', height: 46, marginBottom: 33, border: '1px solid rgb(185 211 239)', borderRadius: '4px' }} /> } style={{ background: '#FFFFFF', height: 46, border: '1px solid rgb(185 211 239)', borderRadius: '4px' }} />
); } function mapStateToProps(state) { const { auth, global } = state; return { user: auth.user, error: auth.error, actions: global.actions, apiRoot: global.apiRoot, isRequesting: auth.isRequesting } } export default connect(mapStateToProps)(Login);