我开始使用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或我必须手动这样做?
当前回答
这应该可以工作:
共享/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,否则 它会说这个模块不存在。
其他回答
阅读描述——route https://angular.io/cli/generate#module-command,
为了存档,您必须将该组件模块的路由添加到某个位置,并指定路由名称。
ng generate module component-name --module=any-parent-module --route=route-path
我在应用程序中有多个模块的类似问题。可以为任何模块创建组件,因此在创建组件之前,必须指定特定模块的名称。
'ng generate component newCompName --module= specify name of module'
转到模块级/我们也可以在根级输入下面的命令
ng g component "path to your component"/NEW_COMPONENT_NAME -m "MODULE_NAME"
例子:
ng g component common/signup/payment-processing/OnlinePayment -m pre-login.module
使用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将一个新组件添加到指定的文件夹中
一种常见的模式是创建带有路由、惰性加载模块和组件的特性。
路线:myapp.com/feature
app-routing.module.ts
{ path: 'feature', loadChildren: () => import('./my-feature/my-feature.module').then(m => m.MyFeatureModule) },
文件结构:
app
└───my-feature
│ │ my-feature-routing.module.ts
│ │ my-feature.component.html
│ │ my-feature.component.css
│ │ my-feature.component.spec.ts
│ │ my-feature.component.ts
│ │ my-feature.module.ts
这一切都可以在cli中完成:
ng generate module my-feature --module app.module --route feature
或更短
ng g m my-feature --module app.module --route feature
或者如果你省略了名字,cli会提示你输入。在需要创建多个特性时非常有用
ng g m --module app.module --route feature