ブラウザバックで遷移してきたかどうかを判定するJavaScriptの関数

ブラウザバックでページに遷移してきたかを判定したいことがあります。

その時に使う関数を紹介します。

関数はこちら

さっそくですが、関数はこれです。

export const isFromBrowserBack = () => {
  const entries = window.performance.getEntriesByType('navigation');
  return entries[0].type === 'back_forward';
};

簡単に解説すると、window.performance.getEntriesByType(‘navigation’);で過去のリダイレクトなどのナビゲーションに関する動作を取得し、その1つ目の中のtypeがブラウザバックを示すback_forwardかどうかを判定しています。

returnのところは

return entries.some((entry) => entry.type === 'back_forward');

のようにsomeを使えば、過去にさかのぼることもできます。

タイトルとURLをコピーしました