ฉันมีโมดูลที่ส่งออกส่วนประกอบเพื่อแสดงไปยังโมดูลอื่น ฉันต้องการใช้ส่วนประกอบนี้ในโมดูลที่เป็นลูกของโมดูลอื่น ฉันกำลังนำเข้าโมดูลแรกในโมดูลหลักเพื่อเปิดใช้งานการใช้งานภายในโมดูลลูก แต่ฉัน ฉันไม่เชื่ออย่างสมบูรณ์ว่านั่นเป็นวิธีที่ดีที่สุดที่จะทำ
นี่คือโมดูลที่แชร์ของฉันในโฟลเดอร์รูทพร้อมส่วนประกอบที่ฉันต้องการใช้:
แอป/shared/shared.module.ts
import {dtComponent} from './dt.component';
@NgModule({
imports: [
CommonModule
],
exports: [
dtComponent
],
declarations: [
dtComponent
]
})
export class DatePModule{ }
ฉันมีโมดูลอื่นในโฟลเดอร์แอปที่นำเข้า DatePModule เช่นนี้:
แอป/ผู้ติดต่อ/contacts.module.ts
import {DatePModule} from '../shared/shared.module.ts';
@NgModule({
imports: [
CommonModule,
DatePModule
]
})
export class CTModule{ }
ฉันจำเป็นต้องใช้ dtComponent ในส่วนประกอบบางส่วนของ CTModule โดยตรง แต่ยังต้องการส่วนประกอบนี้ในส่วนประกอบอื่น ๆ ที่อยู่ในโมดูลย่อยของ CTModule
ฉันสามารถนำเข้า DatePModule อีกครั้งภายในโมดูลย่อยของ CTModule แต่ฉันไม่เชื่อว่านั่นเป็นแนวทางที่ดีที่สุด
แอป/ผู้ติดต่อ/อื่นๆ/other.module.ts
import {DatePModule} from '../../shared/shared.module.ts';
@NgModule({
imports: [
CommonModule,
DatePModule
]
})
export class OtherModule{ }
คำถามของฉันคือ ทำไมฉันต้องนำเข้า DatePModule อีกครั้ง หากนำเข้าในโมดูลหลักแล้ว หากฉันลบการนำเข้านี้ใน OtherModule ส่วนประกอบ dtComponent จะไม่ได้รับการยอมรับว่าเป็นส่วนหนึ่งของโมดูล