当我尝试在angular cli中创建一个组件时,它显示了这个错误。我怎样才能摆脱它呢?
错误:多个模块匹配。使用skip-import选项可以跳过将组件导入到最近的模块。
我使用的是angular cli版本:1.4.1
当我尝试在angular cli中创建一个组件时,它显示了这个错误。我怎样才能摆脱它呢?
错误:多个模块匹配。使用skip-import选项可以跳过将组件导入到最近的模块。
我使用的是angular cli版本:1.4.1
当前回答
我有这个警告时,有这个角。json配置:
"prefix": "app_ng"
当更改为“app”时,一切都工作得很好。
其他回答
Angular CLI: 6.0.8 节点:10.4.0 操作系统:linux x64 角:6.0.4
如果有一个特性模块(例如manager.module.ts)在。"/manager"子文件夹),而路由模块被外部化到单独的NgModule中(例如manager-routing.module.ts),错误消息如下:
超过一个模块匹配。使用skip-import选项可以跳过将组件导入到最近的模块。
不会出现,并且组件已正确生成并添加到manager.module.ts模块。
但是要注意命名惯例!路由模块的名称必须以“-routing”结束!
如果给路由模块一个这样的名字,例如manager-router.module。ts时,CLI会报错,并希望你提供——module选项来自动添加组件导入:
ng generate component some-name --module=manager.module.ts
or
ng generate component some-name --skip-import
如果您希望手动添加组件的导入
Angular CLI: 8.3.1
当你有多个模块时。Ts文件,您需要指定为哪个模块文件生成组件。
ng g c modulefolder/componentname --module=modulename.module
例如,我有一个共享模块文件夹,里面有共享的.module.ts和material.module.ts,就像这样
shared
> shared.module.ts
> material.module.ts
我想为shared.module.ts生成侧边栏组件 然后我将运行以下命令
ng g c shared/sidebar --module=shared.module
如果要导出组件,则运行以下命令
ng g c shared/sidebar --module=shared.module --export
使用——module参数指定模块。 例如,如果主模块是app.module。Ts,运行这个:
ng g c new-component --module app
或者如果你在另一个目录
ng g c component-name --module ../
当app文件夹下有多个模块时,使用以下命令生成组件将失败:
ng generate component New-Component-Name
原因是angular CLI检测到多个模块,不知道该在哪个模块中添加组件。因此,您需要显式地提到将添加哪个模块组件:
ng generate component New-Component-Name --module=ModuleName
如果您在特定的模块中创建,请进入该路径并运行 Ng g c组件名
否则先创建模块 模块名称
cd / app / modulename弧 进入modulename path并创建组件