react hooksを使って、ページ遷移(たぶ切り替え)の制御をした。
hashTagキーでurlの末尾に#~~と記述して、そのページに遷移できるようになる。
javascript
const setHashTag = (hashTag: string) => {
navigate(`#${hashTag}`);
setVal(hashTag);
};
ここで、react hookの登場。useEffectを使う。
urlが変更されたときに起こる副作用をconst以下に記述。[location.hash, val]の配列が更新されるたびにEffect内の関数が実行される。
javascript
useEffect(() => {
const currentHash = location.hash.replace('#', '');
if (currentHash && currentHash !== val) {
setVal(currentHash);
}
}, [location.hash, val]);