Хук useTitle в React
В ВМ уже предоставлены index.html и script.js. В общем, вам нужно только добавить код в script.js и style.css.
Для установки заголовка страницы можно использовать пользовательский хук useTitle. Этот хук использует typeof, чтобы проверить, определено ли Document. Если оно определено, то хук useRef() используется для хранения исходного заголовка Document. Затем хук useEffect() используется для установки Document.title значению, переданному при монтировании компонента, и очистки при демонтировании.
const useTitle = (title) => {
const documentDefined = typeof document !== "undefined";
const originalTitle = React.useRef(documentDefined ? document.title : null);
React.useEffect(() => {
if (!documentDefined) return;
if (document.title !== title) {
document.title = title;
}
return () => {
document.title = originalTitle.current;
};
}, [title]);
};
В примера коде компонент Alert использует хук useTitle, чтобы установить заголовок в "Alert". Компонент MyApp отображает кнопку, которая переключает компонент Alert.
const Alert = () => {
useTitle("Alert");
return (
<div>
<p>Alert! Title has changed</p>
</div>
);
};
const MyApp = () => {
const [alertOpen, setAlertOpen] = React.useState(false);
return (
<div>
<button onClick={() => setAlertOpen(!alertOpen)}>Toggle alert</button>
{alertOpen && <Alert />}
</div>
);
};
ReactDOM.render(<MyApp />, document.getElementById("root"));
Пожалуйста, нажмите на кнопку 'Go Live' в нижнем правом углу, чтобы запустить веб-сервис на порту 8080. Затем можно обновить вкладку Web 8080, чтобы просмотреть веб-страницу.