[Angular入門] コンポーネントが作れない?!エラー対策!

たとえば、次のようなコマンドを入力してエラーになることがあります。

ng g component top

コンポーネント新規作成コマンドです。

次がエラー文。

Error: More than one module matches. Use skip-import option to skip importing the component into the closest module.
More than one module matches. Use skip-import option to skip importing the component into the closest module.

訳:複数のモジュールが一致します。 スキップインポートオプションを使用すると、コンポーネントを最も近いモジュールにインポートするのをスキップできます。

つまり、コンポーネントを作成するときにモジュールに登録するが、登録先がいくつかあり、どこに登録していいかわかりません。なので、コンポーネントは作成しませんでした。

ということのようです。

custom-material.module.tsをappフォルダ直下のapp.module.tsと同じ階層に入れたのが原因のようです。

custom-material.module.tsはAngular Material用のエクスポートモジュールとして使っていますが、これをapp/custom-material等に移したほうが良さそうです。

ただ、どうしてもapp.module.tsと同じ階層に別のモジュールを起きたい場合は、次のコマンドを使えば、コンポーネントを作成することもできます。

ng g component top --module app

コンポーネントのインポート先をapp.module.tsに指定すればOKです。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする