Выбранная часть кажется правильной,
часть с отправкой не имеет.
Я не уверен, что вы пытаетесь сделать с этим эффектом, но использовать Диспетчер просто. Он предоставит вам функцию отправки, которую вы затем сможете использовать для выполнения dispatch(mdalActions.showModal('AreaAddGuest'))
, когда вам это нужно.
Часть }, [dispatch])
в useEffect просто говорит, что useEffect следует запускать всякий раз, когда изменяется функция диспетчеризации, что, вероятно, никогда, но это также сильно зависит от реализации. Это почти наверняка неправильно.
Если можете, опубликуйте код перед добавлением хуков, чтобы увидеть, что было в оригинале.
Также обратите внимание, что нет необходимости переписывать код для использования хуков. Если классы когда-либо станут устаревшими, это, скорее всего, будет далеко в будущем.