Мой первый React Custom Hook

Мне нужно изменить заголовок страницы в зависимости от текущего состояния моего магазина. Прямо сейчас я придумал

const useTitle = () => {
  const { foo, bar } = useSelector(selectFoorBar);
  const baz = useSelector(selectBaz);

  const fooBarDisplayString = format(foo, bar);
  const barDisplayString = (bar ?? 0).toFixed(0);

  useEffect(() => {
    document.title = `${fooBarString} | ${bazDisplayString}`;
  }, [fooBarDisplayString, bazDisplayString]);
};

export default useTitle;

Это имя useTitle соответствующий? Технически это крючок, потому что он использует другие хуки, поэтому он должен начинаться с use ключевое слово. Это кажется странным для кого-то вроде меня, выходящего за пределы мира React. Кроме того, он не возвращает никакого заголовка, так что это больше похоже на keepTitleUpToDate(), который должен стать useKeepTitleUpToDate() что еще более странно. Как бы вы это назвали?

Уместно ли сохранить эту функциональность в хуке, как это сделал я, или в React есть какое-то другое соглашение для вещей, которые зависят от хуков?

0

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *