не можете передать функцию как проп, всегда есть предупреждение? - PullRequest
0 голосов
/ 04 февраля 2020

это мой код:

const handleNotification = React.useCallback(
    type => {
      setSuccess(type);
      setTimeout(() => reset(), 1500);
    },
    [reset]
  );
  const sendRequest = React.useCallback(
    async () => {
      // don't send again while we are sending
      if (isSending) return;
      // update state
      setIsSending(true);
      // send the actual request
      try {
        await axios({
          method: "post",
          url: NONCOM_SEND_MAIL_URL,
          headers: {},
          data: {
            clientId,
            userId,
            email,
            subject: "Non-Compliant Certificate",
            templateCode: "REQNOTMET",
            entityId: entity_id
          }
        });
        handleNotification(true);
      } catch (e) {
        setError(e);
        handleNotification(false);
      }
      // once the request is sent, update state again
      if (isMounted.current)
        // only update if we are still mounted
        setIsSending(false);
    },
    [isSending, clientId, userId, email, entity_id, handleNotification]
  ); // update the callback if the state changes

Я получаю это предупреждение:

Функция 'reset' изменяет зависимости useCallback Hook (в строке 35) для каждого рендера. Переместите его в обратный вызов useCallback. Или же, оберните определение 'reset' в его собственный метод useCallback () Hook

, как вы видите, я уже обернул его внутри useCallback? что я сделал не так в этом случае? сброс - это функция поддержки в этом компоненте. почему это не работает?

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