1
2

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 1 year has passed since last update.

AngularでNG8001: Unknown HTML element or componentが出たら

Posted at

どんなエラーか

テンプレート上で他のコンポーネントを呼び出してもエラーが表示され、うまくサーブされない状態です。

まず試してみてほしいこと

These are the 5 steps I perform when I get such an error.

  • Are you sure the name is correct? (Also check the selector defined in the component)
  • Declare the component in a module?
  • If it is in another module, export the component?
  • If it is in another module, import that module?
  • Restart the cli?

1.HTMLから呼び出されている名前は正しいか?

コンポーネントファイルに定義されているセレクタ名を確認してみてください。

2.モジュール内でコンポーネントを定義していますか?

app.moduleなどでそのコンポーネントが定義されているかどうかを確認してみてください

3.他のモジュールにある場合、そのコンポーネントをエクスポートしているか?

app.moduleと違うモジュールにある際は、しっかりそのコンポーネントがエクスポートされているかを確認してみましょう

4.別モジュールにある場合は、そのモジュールをインポートしていますか?

別のモジュールにある際は、そのモジュールをエクスポートしてみましょう。

5.それでもダメな時は、CLIを再起動しましょう

これは、たまにあります。CLIを再起動してみたり、すべてのファイルが保存された状態になっているかを確認してみましょう

自分はそれでもダメでした。

自分はそれでもだめでした。原因は、親コンポーネントのモジュールと子コンポーネントのモジュールがリファクタリングによって違うモジュールになってました。(あえて言うと、2や3の状態)

わかっていても

基本的なことですが、わかっていても、意外と単純なことで、詰んでしまうこともあります。
(僕はこれで、30分くらい時間を無駄にしてしまいました。)
このエラーに遭遇したら、この記事を見て頂ければと思います。

参考

1
2
0

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
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?