Reactjs 如何自动销毁对话框组件?like(自动隐藏)
我使用MaterialUI的对话组件以类似的方式弹出。但我想让它在屏幕上停留一段时间。我怎么设置这个?我正在寻找像自动隐藏这样的功能。这是一个基本的MUI对话框组件:Reactjs 如何自动销毁对话框组件?like(自动隐藏),reactjs,material-ui,Reactjs,Material Ui,我使用MaterialUI的对话组件以类似的方式弹出。但我想让它在屏幕上停留一段时间。我怎么设置这个?我正在寻找像自动隐藏这样的功能。这是一个基本的MUI对话框组件: <Dialog open={this.state.open ? true : false} onClose={this.handleClose} aria-labelledby="alert-dialog-title" aria-describedby="alert-dialog-d
<Dialog
open={this.state.open ? true : false}
onClose={this.handleClose}
aria-labelledby="alert-dialog-title"
aria-describedby="alert-dialog-description"
disableBackdropClick
>
//content...
</Dialog>
隐藏不是毁灭
const Login: FunctionComponent<Props> = (props) => {
const [should_open, set_should_open] = useState(true);
const { is_login } = useRecoilValue(user_info_state);
// ! logout function
const reset_user_info = useResetRecoilState(user_info_state);
return (
<Wrapper {...props}>
<StyledButton onClick={() => (is_login ? reset_user_info() : set_should_open(true))}>
{is_login ? (
<>
LogOut
<img src={airplanemode_inactive} alt='login' />
</>
) : (
<>
Login
<img src={airplanemode_active} alt='log_out' />
</>
)}
</StyledButton>
{is_login ? '' : <LoginModal should_open={should_open} set_should_open={set_should_open} />}
</Wrapper>
);
const登录:FunctionComponent=(props)=>{
const[should\u open,set\u should\u open]=useState(true);
const{is_login}=useRecoilValue(用户信息状态);
//!注销功能
const reset_user_info=useResetRecoilState(用户信息状态);
返回(
(是否登录?重置用户信息():设置应打开(true))}>
{您登录了吗(
注销
) : (
登录
)}
{是否登录?'':}
);
})
您可以根据状态销毁modal comp谢谢您的帮助
const Login: FunctionComponent<Props> = (props) => {
const [should_open, set_should_open] = useState(true);
const { is_login } = useRecoilValue(user_info_state);
// ! logout function
const reset_user_info = useResetRecoilState(user_info_state);
return (
<Wrapper {...props}>
<StyledButton onClick={() => (is_login ? reset_user_info() : set_should_open(true))}>
{is_login ? (
<>
LogOut
<img src={airplanemode_inactive} alt='login' />
</>
) : (
<>
Login
<img src={airplanemode_active} alt='log_out' />
</>
)}
</StyledButton>
{is_login ? '' : <LoginModal should_open={should_open} set_should_open={set_should_open} />}
</Wrapper>
);