我开始使用angular-cli,我已经阅读了很多关于我想做什么的答案…没有成功,所以我来到这里。

是否有一种方法可以为新模块创建组件?

例如:ng g module newModule

如何将该组件添加到newModule中??

因为angular-cli的默认行为是把所有新组件放到app.module中。我想选择我的组件将在哪里,这样我就可以创建单独的模块,而不会有我所有的组件在app.module。这是可能的使用angular-cli或我必须手动这样做?


当前回答

这应该可以工作:

共享/components/info-card——module=/src/app/shared/shared.module.ts

注:

Ng g c等价于Ng generate component Shared /components/info-card在我项目的src/app中 目录&这是我如何使用它来创建一个组件 在共享/components目录中输入InfoCardComponent (没有指定src/app)。 但是,要将这个新创建的组件添加到特定的模块,您需要 需要在模块的路径中包含/src/app,否则 它会说这个模块不存在。

其他回答

根据Angular文档,为特定模块创建组件的方法是:

ng g component <directory name>/<component name>

"目录名" = CLI生成特性模块的目录

例子:-

ng generate component customer-dashboard/CustomerDashboard

这将在customer-dashboard文件夹中为新组件生成一个文件夹,并使用CustomerDashboardComponent更新特性模块

ng g component nameComponent --module=app.module.ts

Angular 13+ cli

我在模块文件夹下有多个模块

ng g c components/shared/newlayout -m modules/Shared

我用特定的根文件夹创建了基于组件的子模块

下面是我指定的cli命令,请检查

ng g c Repair/RepairHome -m Repair/repair.module

Repair是子模块的根文件夹

-m是——module C代表复合 G代表生成

今天我在搭建一个Angular 9应用程序时遇到了这个问题。我得到了“模块不存在错误”每当我添加.module。Ts或.module到模块名。cli只需要模块名,不需要扩展名。假设我有一个模块名:brands.module。ts,我使用的命令是

ng g c path/to/my/components/brands-component -m brands --dry-run

一旦确认文件结构正确,就删除——dry-run。