我开始使用angular-cli,我已经阅读了很多关于我想做什么的答案…没有成功,所以我来到这里。
是否有一种方法可以为新模块创建组件?
例如:ng g module newModule
如何将该组件添加到newModule中??
因为angular-cli的默认行为是把所有新组件放到app.module中。我想选择我的组件将在哪里,这样我就可以创建单独的模块,而不会有我所有的组件在app.module。这是可能的使用angular-cli或我必须手动这样做?
我开始使用angular-cli,我已经阅读了很多关于我想做什么的答案…没有成功,所以我来到这里。
是否有一种方法可以为新模块创建组件?
例如:ng g module newModule
如何将该组件添加到newModule中??
因为angular-cli的默认行为是把所有新组件放到app.module中。我想选择我的组件将在哪里,这样我就可以创建单独的模块,而不会有我所有的组件在app.module。这是可能的使用angular-cli或我必须手动这样做?
当前回答
使用Angular CLI将一个组件添加到Angular 4应用中
要向应用中添加一个新的Angular 4组件,请使用命令ng g component componentName。执行这个命令后,Angular CLI会在src\app下添加一个文件夹component-name。同样,同样的引用也被添加到src\app\app.module中。Ts文件自动。
组件应该有一个@Component装饰器函数,后面跟着一个需要导出的类。@Component装饰器函数接受元数据。
使用Angular CLI将一个组件添加到Angular 4应用的特定文件夹中
使用命令ng g component folderName/componentName将一个新组件添加到指定的文件夹中
其他回答
我不知道这是不是把你们带到这里来的原因,但我想创建一个包含模块、路由和组件文件的文件夹。我希望将组件声明给我创建的模块。
为此,我发现这个命令非常有用。
Ng路径/to/folder/component—路由路径/to/folder/component
这将创建一个包含6个文件的文件夹。
CREATE path/to/folder/component/component-routing.module.ts (253 bytes)
CREATE path/to/folder/component/component.module.ts (297 bytes)
CREATE path/to/folder/component/component.component.html (26 bytes)
CREATE path/to/folder/component/component.component.spec.ts (655 bytes)
CREATE path/to/folder/component/component.component.ts (295 bytes)
CREATE path/to/folder/component/component.component.scss (0 bytes)
UPDATE path/to/folder/component/component.module.ts (379 bytes)
如果你不想要路由,你可以删除。
我在angular CLI版本8.3中使用过以下命令,它通过生成在特定模块中声明的特定组件来工作。
移动到我们需要生成组件的特定文件夹 cd <组件路径> 调用下面的generate命令 Ng c <component-name>——module=<module-name>
例子
`ng g c login --module= app`
我使用这个特殊的命令在模块内生成组件。
ng g c <module-directory-name>/<component-name>
该命令将在模块本地生成组件。 或者您可以先输入更改目录。
cd <module-directory-name>
然后创建组件。
ng g c <component-name>
注意:<>中包含的代码表示用户特定的名称。
首先,通过执行生成一个模块。
ng g m modules/media
这将在modules文件夹中生成一个名为media的模块。
其次,生成添加到该模块的组件
ng g c modules/media/picPick --module=modules/media/media.module.ts
ng g c modules/media/picPick命令的第一部分将在modules/media文件夹中生成一个名为picPick的组件文件夹,其中包含我们的新媒体模块。
第二部分将在media模块中导入新的picPick组件,并将其附加到该模块的declarations数组中。
在特定的模块中创建模块、服务和组件
Basic:
ng g module chat
ng g service chat/chat -m chat
ng g component chat/chat-dialog -m chat
In chat.module.ts:
exports: [ChatDialogComponent],
providers: [ChatService]
In app.module.ts:
imports: [
BrowserModule,
ChatModule
]
Now in app.component.html:
<chat-dialog></chat-dialog>
LAZY LOADING:
ng g module pages --module app.module --route pages
CREATE src/app/pages/pages-routing.module.ts (340 bytes)
CREATE src/app/pages/pages.module.ts (342 bytes)
CREATE src/app/pages/pages.component.css (0 bytes)
CREATE src/app/pages/pages.component.html (20 bytes)
CREATE src/app/pages/pages.component.spec.ts (621 bytes)
CREATE src/app/pages/pages.component.ts (271 bytes)
UPDATE src/app/app-routing.module.ts (8611 bytes)
ng g module pages/forms --module pages/pages.module --route forms
CREATE src/app/forms/forms-routing.module.ts (340 bytes)
CREATE src/app/forms/forms.module.ts (342 bytes)
CREATE src/app/forms/forms.component.css (0 bytes)
CREATE src/app/forms/forms.component.html (20 bytes)
CREATE src/app/forms/forms.component.spec.ts (621 bytes)
CREATE src/app/forms/forms.component.ts (271 bytes)
UPDATE src/app/pages/pages-routing.module.ts (437 bytes)