UseTitle
const useTitle = (initialTitle) => {
const [title, setTitle] = useState(initialTitle);
const updateTitle = () => {
const htmlTitle = document.querySelector("title");
htmlTitle.innerText = title;
};
useEffect(updateTitle, [title]);
return setTitle;
};
const App = () => {
const titleUpdater = useTitle("Loading...");
setTimeout(() => titleUpdater("Home"), 5000);
return (
<div className="App">
<div>Hi</div>
</div>
);
};
const htmlTitle = document.querySelector("title");
html tag의 title을 얻는다.
useEffect(updateTitle, [title]);
componentDidMount이거나 title이 업데이트되면, updateTitle함수 호출을 해준다.
setTimeout(() => titleUpdater("Home"), 5000);
5초 뒤 title은 Home으로 바뀐다.