【问题标题】:Cant export service from module 'it was neither declared nor imported' [duplicate]无法从模块“既未声明也未导入”导出服务[重复]
【发布时间】:2017-05-23 11:27:17
【问题描述】:


我正在尝试从我的一个模块中导出服务,但我只收到以下错误:

ERROR Error: Uncaught (in promise): 
Error: Can't export value ConfirmDialogService from SharedModule as it was neither declared nor imported!

我的模块如下:

import { NgModule }                 from "@angular/core";
import { CommonModule }             from "@angular/common";
import { FormsModule }              from "@angular/forms";
import { RouterModule }             from "@angular/router";
import { MaterialModule }           from "@angular/material";

import { ConfirmDialogComponent }       from './confirm-dialog/confirm-dialog.component';
import { ConfirmDialogService }         from './confirm-dialog/confirm-dialog.service';

@NgModule({
    imports: [
        RouterModule,
        CommonModule,
        MaterialModule,
        FormsModule
    ],
    providers: [
        ConfirmDialogService
    ],
    declarations: [
        ConfirmDialogComponent 
    ],
    exports: [
        ConfirmDialogComponent 
        ConfirmDialogService
    ]
})
export class SharedModule {}

这些文件确实存在并且在 TS 中被正确引用,但是在运行应用程序时出现错误。

【问题讨论】:

  • 这个问题被标记为重复,但无法在此处找到其他文章或提供其解决方案的参考资料。

标签: angular angular2-services


【解决方案1】:

exports 中不需要列出服务,只能列出组件、指令和管道。对于服务,providers 是相关的,但除此之外,TypeScript 导入就足够了。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-06-13
  • 2018-10-13
  • 1970-01-01
  • 2020-08-27
  • 1970-01-01
  • 1970-01-01
  • 2019-07-01
相关资源
最近更新 更多