アンカータグを次のように使用する場合:
<a href="/page1" onclick="return false;">page 1</a>
アンカータグを使用してhrefがアプリまたはページをリロードする場合、angle4としてrouterLink属性を使用する場合、アプリはajaxのようにページまたはアプリをリロードせずにページを変更します。また、コンテンツはデータベース、wysiwygエディターからロードされるため、ユーザーがリンクをクリックするたびにサイトをリロードすることはできません。その点で、「リンクジュース」を失うことなく、イベントURLをrouterLink関数に渡すことができます。
クリックイベントの処理方法を再検討する必要があります。ほとんどの場合、ユーザーはページをリロードする必要がある場合、気にしません。
別の観察では、インラインイベントハンドラは廃止されます。これらのメソッドは、動作と構造分離の最新のアプローチと互換性がありません。 preventDefault()
を使用する必要があります。
しかし、あなたの質問に答えるために、各ブラウザはデフォルトの動作とそれらを防ぐ方法を定義しました。ユーザーがリンクをクリックすると、ブラウザーは<a href=”...”>
で指定されたページをロードします。ブラウザーがデフォルトの動作に従う前に、イベントハンドラーを最初に実行する必要があるため、falseを指定した場合、リンクをたどることはありません。
良いニュースは、ボットまたはWebクローラーも独自のデフォルトの動作を持ち、ブラウザーとして動作しないことです。クローラーはすべてのhrefs属性コンテンツを見つけ、デフォルトでリンクをたどることが期待できます。
定義されたhref URLにアクセスでき、リソースにアクセスできる限り、それ自体でロードされ(クリックされたリンクを介さずに)、SEOまたはリンクエクイティの問題が発生しないまったく新しいクロール可能なWebページを作成します。
リンクのクリックによる新しいページの読み込みを防止することは、次の場合に限りSEOフレンドリーです。
/page1
URLにアクセスすると、ページ1のコンテンツが読み込まれ表示されます。pushState
を使用して、ユーザーがリンクをクリックしたときに表示されるURLを変更するとさらに便利です。その後、ユーザーはWebアプリでページをリロードせずに、新しいページと新しいURLをすべて表示します。