当我尝试在angular cli中创建一个组件时,它显示了这个错误。我怎样才能摆脱它呢?

错误:多个模块匹配。使用skip-import选项可以跳过将组件导入到最近的模块。

我使用的是angular cli版本:1.4.1


当前回答

只是对Zisha的答案做了一个小小的更新。

在我的项目中,所有的模块都放在一个名为“modules”的文件夹中,所有的组件都放在“src/app”下的“components”文件夹中。

所以要在特定的路径下创建一个组件,我使用以下语法:

components_path/component_name——module modules_path/module_name

例子:

Ng g c组件/登录——模块模块/app

其他回答

作为一个黑客,下面的步骤,对我有用。

1)移动*.module。Ts文件从src/app到项目外的位置。

2)执行命令创建组件[ng g c component-name]

3)移回*.模块。Ts文件到src/app/

再补充一点信息给像我这样只有一个程序的人。

我用主app.module.ts设置了我的应用程序,我用路由模块在主应用程序下的自己的文件夹中进行路由。我浏览了一下,做了一些“清理”,因为我还有一些其他的东西需要更好地组织。我做的一件事是将routing.module.ts移动到根文件夹;因为它是文件夹中唯一的文件,我认为它不需要它自己的文件夹。

这一开始工作得很好,但下一次我试图生成一个新组件时(一段时间后,通过WebStorm IDE),它失败了。读完这篇文章后,我试着把路由模块放回一个单独的文件夹,它又工作了。

所以要提醒其他人,不要将路由模块移动到根文件夹中!我确信还有其他方法来处理这个问题,但我很高兴它现在在它自己的文件夹中,并使用IDE生成器,就像我以前一样。

对我来说,这个命令工作:

ng g c new-component --module app

试试这个:它对我很有效

生成组件componentName——module=app.module

我有这个警告时,有这个角。json配置:

"prefix": "app_ng"

当更改为“app”时,一切都工作得很好。