When an open modal is closed and a new modal is opened afterward, the close event from the first modal is improperly propagating to the second one. This causes the new modal to open immediately and then close automatically, resulting in unexpected behavior.
Your Example Website or App
No response
Steps to Reproduce the Bug or Issue
-------------------- FIRST MODAL ---------------------
import {
Button,
FormControl,
FormHelperText,
FormLabel,
LinearProgress,
Typography,
} from '@mui/joy'
import {
Modal,
ModalContent,
ModalHeader,
ModalBody,
ModalFooter,
Avatar,
useDisclosure,
} from '@nextui-org/react'
import {
Select as SelectNext,
SelectItem as SelectItemNext,
Input as InputNext,
} from '@nextui-org/react'
import { FormProps, schema } from './form-schema'
import { Controller, useForm } from 'react-hook-form'
import { useContext, useEffect, useMemo } from 'react'
import { UserContext } from '@/context/user-context'
import { useMediaQuery } from 'react-responsive'
import { zodResolver } from '@hookform/resolvers/zod'
import { auth } from '@/config/firebase-config'
import { useBrands } from './hooks/use-load-brands'
import { useModels } from './hooks/use-load-models'
import { useVersions } from './hooks/use-load-versions'
import { userRegisterCar } from './hooks/use-register-car'
import { format, subYears } from 'date-fns'
import { toast } from 'sonner'
import { UserCarsContext } from '@/context/user-cars-context'
import { RequestCar } from './request-car'
export function RegisterCar({ buttonProps }: { buttonProps?: any }) {
const { isOpen, onOpen, onOpenChange } = useDisclosure()
NextUI Version
2.4.8
Describe the bug
When an open modal is closed and a new modal is opened afterward, the close event from the first modal is improperly propagating to the second one. This causes the new modal to open immediately and then close automatically, resulting in unexpected behavior.
Your Example Website or App
No response
Steps to Reproduce the Bug or Issue
-------------------- FIRST MODAL --------------------- import { Button, FormControl, FormHelperText, FormLabel, LinearProgress, Typography, } from '@mui/joy' import { Modal, ModalContent, ModalHeader, ModalBody, ModalFooter, Avatar, useDisclosure, } from '@nextui-org/react'
import { Select as SelectNext, SelectItem as SelectItemNext, Input as InputNext, } from '@nextui-org/react'
import { FormProps, schema } from './form-schema' import { Controller, useForm } from 'react-hook-form' import { useContext, useEffect, useMemo } from 'react'
import { UserContext } from '@/context/user-context' import { useMediaQuery } from 'react-responsive' import { zodResolver } from '@hookform/resolvers/zod' import { auth } from '@/config/firebase-config' import { useBrands } from './hooks/use-load-brands' import { useModels } from './hooks/use-load-models' import { useVersions } from './hooks/use-load-versions' import { userRegisterCar } from './hooks/use-register-car' import { format, subYears } from 'date-fns' import { toast } from 'sonner' import { UserCarsContext } from '@/context/user-cars-context' import { RequestCar } from './request-car'
export function RegisterCar({ buttonProps }: { buttonProps?: any }) { const { isOpen, onOpen, onOpenChange } = useDisclosure()
}
-------------------- SECOND MOL ---------------------
import { Button, FormControl, FormHelperText, FormLabel, Link, Typography, } from '@mui/joy' import { Input, Modal, ModalBody, ModalContent, ModalFooter, ModalHeader, } from '@nextui-org/react' import { IconInfoCircle } from '@tabler/icons-react' import { Fragment, useState } from 'react' import { Controller, useForm } from 'react-hook-form' import { FormProps, schema } from './form-schema' import { zodResolver } from '@hookform/resolvers/zod'
export function RequestCar(props: { onOpenModal: () => void }) { const [openModal, setOpenModal] = useState(false)
}
Expected behavior
Do not propagate the state change from one modal to another.
Screenshots or Videos
Operating System Version
windows
Browser
Chrome