我正在尝试将 Material-ui 对话框的打开状态移至 redux,以防止其在重新渲染发生时关闭,但在发生重新渲染时我遇到了对话框问题。虽然状态保存在 redux 中,并且每当重新渲染发生时对话框都会保持打开状态,但打开状态保持打开状态,但对话框确实显示打开动画(淡入),这有点烦人。
Students.js(模式的父组件)
const Students = ({
app: { studentsPage: { savedAddDialogOpen }},
setStudentsPageAddDialogOpen}) => {
// Create the local states
const [dialogOpen, setDialogOpen] = React.useState(savedAddDialogOpen);
const dialogOpenRef = React.useRef(savedAddDialogOpen);
// Change redux dialog open
const setReduxDialogState = () => {
setStudentsPageAddDialogOpen(dialogOpenRef.current, savedAddDialogOpen);
};
// Open add student dialog
const dialogClickOpen = () => {
setDialogOpen(true);
dialogOpenRef.current = true;
setTimeout(() => setReduxDialogState(), 300);
};
// Close add student dialog
const dialogClose = () => {
setDialogOpen(false); …Run Code Online (Sandbox Code Playgroud)