2015-12-01 6 views
6

Ich habe vor kurzem a typescript definition file für die Open-Source-redux-ui-Router-Bibliothek, aber ich bin jetzt Fehler wie folgt mit Typoskript 1.7.3 bekommen:Wie erstellt man eine "externe Modul" Typoskript-Definitionsdatei, die in ein npm-Paket aufgenommen werden soll?

Fehler TS2656: Exportiert Umverpackung Typisierungen Datei ‚C : /.../ node_modules/redux-ui-router/index.d.ts 'ist kein Modul. Bitte kontaktieren Sie den Autor des Pakets, um das Paket zu aktualisieren.

Ich versuche, diese Bibliothek mit Code zu importieren wie dies in meinem Typoskript Dateien:

import ngReduxUiRouter from "redux-ui-router"; 

Ich bin neu in Maschinenschrift, und ich kann nicht eine klare Beschreibung dessen, was genau dieser Definition finden Die Datei sollte aussehen, wenn sie in einem npm-Paket enthalten ist. There's a wiki entry das spricht über Typings für NPM-Pakete, aber außerhalb der Richtung, dass ein externes Modul verwendet werden sollte, gibt es kein konkretes Beispiel, von dem zu arbeiten.

KORREKTUR Ich habe versucht das Entfernen der declare module "redux-ui-router" { Code, und das schien nach dem Neustart webpack zu arbeiten, die ich verwende, alles zu kompilieren (Ich entfernte die Kommentare der Kürze halber):

export interface ReduxUIRouterAction { 
    type: string; 
    payload: any; 
} 
export interface ReduxUIRouterState { 
    currentState: Object; 
    currentParams: Object; 
    prevState: Object; 
    prevParams: Object; 
} 
export function router(state: ReduxUIRouterState, action: ReduxUIRouterAction): ReduxUIRouterState; 
export var ngReduxUiRouter: string; 
export function stateGo(to: string, params?: Object, options?: Object): ReduxUIRouterAction; 
export function stateReload(state: any): ReduxUIRouterAction; 
export function stateTransitionTo(to: string, params?: Object, options?: Object): ReduxUIRouterAction; 
export default ngReduxUiRouter; 

Ist diese Menge von Änderungen, was zu erwarten wäre, wenn dies in einem NPM-Paket enthalten wäre?

Antwort

4

Ist diese Reihe von Änderungen, was erwartet werden würde, wenn dies in einem NPM-Paket enthalten?

Ja. Die Exporte müssen root-Level in der Datei sein.

Mit anderen Worten: eine Umgebungsdatei ist kein externes Modul

Verwandte Themen