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

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

我使用的是angular cli版本:1.4.1


当前回答

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

ng g c new-component --module app

其他回答

我的项目是使用Visual Studio Community 2017创建的,它创建了3个独立的模块:app.browser。Module, app.server.module和app.shared.module

为了创建我的组件,我检查了上面的答案,发现我的模块是app.share .module。

所以,我跑:

ng g c componentName --module=app.shared.module

在我的例子中,ng似乎没有注册到我的环境路径中。我一直使用npm run命令来运行ng命令。注意,为了传递参数,你需要一个额外的参数——根据npm运行规范。

例子:

npm run ng g c components/scheduling **--** --module=app

Or:

npm run ng g c components/scheduling **--** --skip-import

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

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

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

components_path/component_name——module modules_path/module_name

例子:

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

试试ng g component header——module app 这是我的工作

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

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

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

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