web-dev-qa-db-ja.com

モジュールからのカントエクスポートサービス「宣言もインポートもされていません」


モジュールの1つからサービスをエクスポートしようとしていますが、次のエラーしか表示されません。

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で正しく参照されますが、アプリを実行するとエラーが表示されます。

33
Code Spirit

サービスをexportsにリストする必要はなく、コンポーネント、ディレクティブ、およびパイプのみをリストできます。サービスの場合、providersが関連しますが、それ以外の場合はTypeScriptのインポートで十分です。

77