Próbowałem eksportować interfejs w NgModule-deklaracji i wywozu oraz uzyskiwanie ten błąd już w edytorze (Visual Code Studio): [ts] 'MyInterface' only refers to a type, but is being used as a value here.
Interfejs nie może być eksportowany w kancie 2-kątowym?
Oto przykładowy kod Edit-1:
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { FormsModule } from '@angular/forms';
import { MaterialModule } from '@angular/material';
import { MyInterface } from './my.interface';
import { MyService } from './my.service';
@NgModule({
imports: [ CommonModule, FormsModule, MaterialModule.forRoot() ],
declarations: [ MyInterface],//<- this is causing the message
exports: [ MyInterface],
providers: [ MyService ]
})
export class MyModule { }
Jedna część objaśnienia znalazłem in the answer to this post: "ponieważ interfejsy są usuwane w środowisku wykonawczym w TypeScript". Obecnie refactoruję swoją aplikację do modułów funkcji, więc nie mogę jej teraz przetestować: Czy mogę używać interfejsów tylko po zaimportowaniu z "./mypathto/myinterfejsu"?
Zamieść swój kod. eksportowanie i importowanie interfejsów działa tutaj dobrze. –
Gdzie chcesz go użyć? Jako dostawca? "Próbowałem wyeksportować interfejs w deklaracji NgModule" co masz na myśli? – yurzui
Zapoznaj się z dokumentacją https://angular.io/docs/ts/latest/guide/dependency-injection.html#!# maszynopis-interfejsy-aren-t-valid-tokens – yurzui