0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Angular:リンクアクティブの完全一致を機能させる際のエラー対応

Last updated at Posted at 2020-02-09

Angularにて現在アクティブなページのリンクボタンのみの色を変化させるためには
「routerLinkActiveOptions」の設定をしなければいけません。
設定しないと、「/」や「help」ごとにアクティブ判別出来ず、「/」にアクセスした場合は他ページへ遷移してもずっとアクティブカラーになってしまいます。

設定の際にエラーでハマって解決した事例をまとめました。

まず下記のようにコーディングをしました。(ヘルプ画面のナビボタンを設置しているヘルプコンポーネントHTML)
▼エラー時のコード
トップ画面へ
ヘルプ画面へ

そしたらヘルプコンポーネントの内容が表示されません。。
コンソールを確認したら
「ERROR Error: Uncaught (in promise): Error: Template parse errors:
Parser Error: Missing expected } at the end of the expression [{exact: true] in ng:///HelpModule/HelpComponent.html@1:80 ("e}">トップ画面へ」
と表示されています。

「routerLinkActiveOptions」のソースを貼り付ける際、
「}」がついていない箇所があり該当コンポーネントHTMLが表示されませんでした。

下記は「}」を貼り付けた正常なコードです。
▼正常なコード
トップ画面へ
ヘルプ画面へ

エラーが出現したら必ずコンソールエラーを確認することを習慣にしないといけませんね!

0
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?