这是我的leads.module
的样子,没有在其他模块之间共享任何组件,并且一切正常运行,没有错误。
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { IonicModule } from '@ionic/angular';
import { LeadsPageRoutingModule } from './leads-routing.module';
import { LeadsPages } from '../_pages';
import { LeadsComponents, CreateCustomerComponents } from 'src/components/_components';
@NgModule({
imports: [
CommonModule,
IonicModule,
LeadsPageRoutingModule,
FormsModule,
ReactiveFormsModule
],
declarations: [
...LeadsPages,
...LeadsComponents,
...CreateCustomerComponents
]
})
export class LeadsModule { }
如果可以的话,我将不理会它,但是我需要利用另一个模块中的CreateCustomerComponents
才能在应用程序的不同页面上使用。我不能简单地在两个不同的模块中声明CreateCustomerComponents
,因为组件只能在一个项目中声明一次。因此,我创建了一个新的create-customer-shared.module
,如下所示:
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { CreateCustomerComponents } from 'src/components/_components';
@NgModule({
imports: [CommonModule, FormsModule, ReactiveFormsModule],
declarations: [...CreateCustomerComponents],
exports: [...CreateCustomerComponents]
})
export class CreateCustomerSharedModule { }
然后我将leads.module
更新为:
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { IonicModule } from '@ionic/angular';
import { LeadsPageRoutingModule } from './leads-routing.module';
import { LeadsPages } from '../_pages';
import { LeadsComponents } from 'src/components/_components';
import { CreateCustomerSharedModule } from 'src/modules/create-customer-shared.module';
@NgModule({
imports: [
CommonModule,
IonicModule,
LeadsPageRoutingModule,
// FormsModule,
// ReactiveFormsModule,
CreateCustomerSharedModule
],
declarations: [
...LeadsPages,
...LeadsComponents
]
})
export class LeadsModule { }
这时CreateCustomerComponents
在模块之间是可共享的,但是它们所依赖的反应形式不再起作用。具体来说,我得到一个错误阅读-错误错误:名称为'[name]'的表单控件没有值访问器。您会看到我在FormsModule
中留下了注释掉的ReactiveFormsModule
和leads.module
,因为我也尝试将它们导入到leads.module
中解决此问题。
对于如何解决此问题的任何建议或指导,将不胜感激。谢谢!