2016-04-20 4 views
3

Ich verwende das Skelett-Typoskript-Beispiel und arbeite durch die Dokumentation. Ich versuche, einen Wertwandler mit der Ziffer einzurichten, wie es in der docs gezeigt wird.So verwenden Sie installierte Module in Aurelia

import numeral from 'numeral'; 

export class CurrencyFormatValueConverter { 
    toView(value) { 
    return numeral(value).format('($0,0.00)'); 
    } 
} 

Ich habe Ziffer über jspm install numeral installiert. Es wird package.json innerhalb der jspm-Abhängigkeiten hinzugefügt, und ich habe es manuell zu bundles.js hinzugefügt.

Nach dem Speichern der Typoskript-Datei erhalte ich den Fehler: Cannot find module 'numeral'.. Was vermisse ich?

+0

Sie sollten es nach der Installation über Jspm importieren können. Vielleicht gibt es irgendwo in Ihrem Code einen Fehler –

Antwort

0

Sie sollten es in Ihrer Konfiguration hinzufügen:

export function configure(aurelia) { 
    aurelia.use 
     .standardConfiguration() 
     .developmentLogging() 
     .plugin('numeral'); 

    aurelia.start().then(() => aurelia.setRoot()); 
} 

Sie die genauen Paketnamen in Ihrer package.json finden:

jspm": { 
    "dependencies": { 
     ... 
     "numeral": "xxxx" 
     ... 
    } 
} 
+0

Ich habe bereits den Aufruf des Plugins hinzugefügt und überprüft, dass package.json "number": "npm: [email protected]^1.5.3" als jspm-Abhängigkeit listet. Der Fehler "Modulnummer nicht finden" ist immer noch vorhanden. " VsCode beschwert sich auch, dass es Modulnummer nicht finden kann. – Marius

2

Sie benötigen d.ts für numeral.js. und da es keine d.ts auf Typings gibt, kann dies das Problem lösen:

$ jspm install npm:@types/numeral. 

Es funktioniert in meinem Skelett mit Wertkonverter. Der Import kann wie folgt durchgeführt werden: ;