В React Hook useEffect отсутствует зависимость (функция определена в контексте) - PullRequest
0 голосов
/ 12 февраля 2020

Я получаю сообщение об ошибке: React Hook useEffect отсутствует зависимость: 'setSelectedPage'. Либо включите его, либо удалите массив зависимых реактив-крючков / исчерпывающего-депс

const Blah = props => {
    const { setPage } = useContext(GlobalContext);

    useEffect(() => {
        setPage("new project");
    }, []);

    return (
        <NewProjectState>
            <Index props={props} />
        </NewProjectState>
    );
};

export default Blah;

Я понимаю, что реакция хотела бы, чтобы я определил функцию setPage в useEffect, однако она, очевидно, используется в другом месте. Я действительно удивился, почему бы просто не поместить функцию setPage в функцию возврата. Я думаю, что я спрашиваю, каков наилучший способ сделать это?

1 Ответ

0 голосов
/ 12 февраля 2020

Если вы уверены, что это не повлияет на ваше приложение плохими способами, то вы можете игнорировать линтер с помощью // eslint-disable-next-line react-hooks/exhaustive-deps

const Blah = props => { 
  const { setPage } = useContext(GlobalContext);

  useEffect(() => {
    setPage("new project");
    // eslint-disable-next-line react-hooks/exhaustive-deps
  }, []);

  return (
    <NewProjectState>
        <Index props={props} />
    </NewProjectState>
  );
};

export default Blah;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...