我开始使用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或我必须手动这样做?
当前回答
第一个生成模块:
ng g m moduleName --routing
这将创建一个moduleName文件夹,然后导航到module文件夹
cd moduleName
然后生成组件:
ng g c componentName --module=moduleName.module.ts --flat
使用——flat表示不在模块文件夹中创建子文件夹
其他回答
ng g c componentName --module=path-to-your-module-from-src-folder
例子:
ng g c testComponent --module=/src/app/home/test-component/test-component.module
要将组件创建为模块的一部分,您应该
生成一个模块, cd newModule将目录更改为newModule文件夹 创建一个组件作为该模块的子组件。
更新:Angular 9
现在,生成组件时在哪个文件夹中都不重要了。
ng module NewModule生成一个模块。 new-module/new-component创建NewComponent。
注意:当Angular CLI看到new-module/new-component时,它会理解并转换case以匹配new-module -> NewModule和new-component -> NewComponent。刚开始可能会让人困惑,所以简单的方法是将#2中的名称与模块和组件的文件夹名称匹配。
对于Angular v4及以上版本,只需使用:
ng g c componentName -m ModuleName
今天我在搭建一个Angular 9应用程序时遇到了这个问题。我得到了“模块不存在错误”每当我添加.module。Ts或.module到模块名。cli只需要模块名,不需要扩展名。假设我有一个模块名:brands.module。ts,我使用的命令是
ng g c path/to/my/components/brands-component -m brands --dry-run
一旦确认文件结构正确,就删除——dry-run。
首先,通过执行生成一个模块。
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数组中。