web-dev-qa-db-ja.com

ngサブディレクトリにコンポーネントを生成します

私は次のディレクトリ構造を持っています

enter image description here

新しいページを作成したいと思います。たとえば、Aboutページを作成します。 src/app/page/about/*に置きたい

だから私は試します:

ng generate component pages/about

しかし、私はこのエラーを受け取ります:

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.

ページを使用して個別のページを保存することをお勧めしますか? angular-cliを使用してサブディレクトリにコンポーネントを生成するにはどうすればよいですか?

11
Alexander Mills

2つのモジュール(app.module.tsshared.module.ts)CLIは、コンポーネントを宣言するモジュールを知らないことを発見しました。これを回避するには、moduleオプションでコンポーネントを宣言するモジュールをCLIに伝える必要があります。

ng generate component pages/about --module=app.module
// or
ng generate component pages/about --module=shared.module
27
Brocco

一般に、特定のパスでコンポーネントを生成する必要があるか、上記のような複数の親モジュールを生成する必要はありません。

$> ng gコンポーネントパス/コンポーネント名
src/app/path/component-name-> pathの必要はありません。AgnularCLIアプリの場合。

src/appに言及した場合、「エラー:複数のモジュールが一致します。skip-importを使用」が発生します。

2
gnganpath

新しいモジュールの一部としてコンポーネントを作成するには、次のこともできます。

cd newModule to change directory into the newModule folder

ng g c newComponent to create a component as a child of the module.

これでうまくいきました。受け取ったのと同じエラーが表示されました。

0
user3444999