modal-dialog - 即使导入并声明了Angular 8,也无法从模块中导出组件
问题描述
我正在开发一个应用程序,其中我有一个 SharedUiModule 包含将在应用程序的其他部分中使用的所有组件(和服务)。
现在我想从 SharedUiModule 中导出我的 ModalComponent(重命名为 PopupComponent),这样我就可以通过导入 SharedUiModule 在其他模块中重用它。
问题是,在 SharedUiModule 中,即使在导入 PopupComponent 并声明它之后,当我想导出它时,我也会收到以下警告:“无法从 SharedUiModule 导出 PopupComponent,因为它既没有声明也没有导入其中”。花了几个小时在互联网上搜索,但找不到任何类似的问题。
我的 IDE 是 Intellij。这是我的 SharedUiModule 的样子:
import {CommonModule} from '@angular/common';
import {MatDialogModule, MatFormFieldModule, MatIconModule, MatListModule} from "@angular/material";
import {PopupComponent} from "./popup/popup.component";
@NgModule({
imports: [
CommonModule,
MatListModule,
MatIconModule,
MatFormFieldModule,
MatDialogModule,
],
declarations: [
PopupComponent
],
exports: [
PopupComponent <= "Cannot export PopupComponent from SharedUiModule as it is neither declared nor imported in it"
],
entryComponents: [PopupComponent]
})
export class SharedUiModule {}
解决方案
一位工作伙伴告诉我尝试以与导入组件相同的方式导出组件并且它可以工作!现在我不明白为什么这种方式有效,而导出属性应该完成工作(我的同事也没有任何解释)
import {PopupComponent} from "./popup/popup.component";
export {PopupComponent};
推荐阅读
- javascript - 这种类型的输入标签是如何实现的?
- kubernetes - 如何在 K8S 云提供商上为 Ingress Controller 分配 IP 地址 - EKS 和 GKE
- python - 如何在 Python 中获取 numpy 数组周边的值?
- html - 如何使用 FabricJS 创建形状不规则的 HTML 画布?
- jquery - jQuery; 对根据动态创建的变量的值创建的类应用样式
- go - golang,在 2 个模型之间创建关系并使用 gorm 通过 Preload 检索它们
- python - 在 Python 中组合从 .split() 生成的列表
- python-3.x - Easyviz 和 scitools.std 仍然适用于 python3?除了从一系列图像制作电影之外,还有其他方法吗?
- java - 抛硬币方法建议
- python - 使用while循环时如何在python中排除空行和小于零的数字