import logo from '@/assets/img/logo.png' import { userStore } from '@/store/mobx' import { iMenuItem } from '@/types/router' import { validJLProject } from '@/utils/common/api' import consts from '@/utils/consts' import { Button, Dropdown, Menu, Tooltip } from "antd" import { observer } from 'mobx-react' import React, { useEffect } from 'react' import { Link } from "react-router-dom" import SvgIcon from '../SvgIcon' import styles from './index.module.scss' import './index.scss' import MenuItem from './MenuItem' interface iMenuProps { list: iMenuItem[] } const NavSider: React.FC = (props) => { const { list: MeunList } = props const handleLogout = () => { userStore.logout() } useEffect(() => { if (!userStore.isLogin) { userStore.getUserInfo() } }, []) const redirectToJL = async (e: React.MouseEvent) => { e.preventDefault() const { code = -1, data = {} } = await validJLProject() if (code === consts.RET_CODE.SUCCESS) { const { env, token } = data if (token) { let redirect if (env) { redirect = `${consts.JL_PATH.QA}/login/management?auth=${token}` } else { redirect = `${consts.JL_PATH.PROD}/login/management?auth=${token}` } window.open(redirect) } } } return (
{ MeunList?.map((item: iMenuItem, idx: number) => item.isTop && ) } { userStore.userInfo.jlAuth ? : null }
{ MeunList?.map((item: iMenuItem, idx: number) => { if (item.path === '/console/management') { return userStore.role === 'ADMIN' ? !item.isTop && : '' } else { return !item.isTop && } }) }
{ return ( 账号资料 账号安全 帮助中心 {/* 退出登录 */} handleLogout()}>退出登录 ) }} trigger={[ 'click' ]} placement="topRight">
) } export default observer(NavSider)