2016-04-20 54 views
3

我正在使用skeleton-typescript示例並完成文檔。我試圖設置一個帶有數字的值轉換器,如docs所示。如何在aurelia中使用已安裝的模塊

import numeral from 'numeral'; 

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

我已經通過jspm install numeral安裝了數字。它在jspm依賴項中添加了package.json,並且我手動將它添加到了bundles.js。

保存打字稿文件後出現錯誤:Cannot find module 'numeral'.。我錯過了什麼?

+0

您應該可以在通過jspm安裝後導入它。也許在你的代碼的某處出現錯誤 –

回答

0

你應該在你的配置加上它像:

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

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

你會發現在你的package.json確切的包名:

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

我已經添加了插件調用並且雙重檢查了package.json列出了「數字」:「npm:[email protected]^1.5.3」作爲jspm依賴項。錯誤「無法找到模塊的數字」仍然存在。「 VsCode也抱怨說它找不到模塊數字。 – Marius

2

您需要numeral.js d.ts。並且由於在類型上沒有d.ts,所以這可以解決問題:

$ jspm install npm:@types/numeral. 

它在我的骨架中使用值轉換器。導入可以像import * as numeral from 'numeral'一樣完成;