当我尝试在angular cli中创建一个组件时,它显示了这个错误。我怎样才能摆脱它呢?
错误:多个模块匹配。使用skip-import选项可以跳过将组件导入到最近的模块。
我使用的是angular cli版本:1.4.1
当我尝试在angular cli中创建一个组件时,它显示了这个错误。我怎样才能摆脱它呢?
错误:多个模块匹配。使用skip-import选项可以跳过将组件导入到最近的模块。
我使用的是angular cli版本:1.4.1
当前回答
当有多个模块时,需要指定模块名
ng g c componentName --module=modulename.module
其他回答
这对我很有用
ng g component component-name --skip-import
当app文件夹下有多个模块时,使用以下命令生成组件将失败:
ng generate component New-Component-Name
原因是angular CLI检测到多个模块,不知道该在哪个模块中添加组件。因此,您需要显式地提到将添加哪个模块组件:
ng generate component New-Component-Name --module=ModuleName
这是由于生成试图将您的组件添加到模块,即添加这一行
import { MyComponent } from './Components/my-component/my-component.component';
但它找到了两个模块。
正如这里所述,他们修复了一种情况,只要在根src/app文件夹中只有一个模块,就可以了,所以只需将辅助模块移动到子文件夹中。
否则你必须使用——module
试试这个:它对我很有效
生成组件componentName——module=app.module
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