2016-08-31 92 views
1

我用打字稿開始一個新項目,我對輸入有疑問。 假設我有這2個文件:用打字稿輸入

// foo.ts 
namespace root { 
    export class Test { 
     constructor() { 
      console.log(BAR) 
     } 
    } 
} 

// a/bar.ts 
namespace root.a { 
    export const BAR = 'Whatever' 
} 

我如何使用我的吧常量到我的測試類? 我試圖添加/// <reference path="a/bar.ts" />,然後我可以撥打root.a.BAR甚至a.BAR

但我寧願不使用這個參考語句,這有可能嗎? 此外,我想使用BAR沒有其完整的名稱空間,是否也有可能?

謝謝你在前進,
澤維爾

回答

1

我寧願不使用此引用的語句,這可能

是的,你可以使用tsconfig.json:https://basarat.gitbooks.io/alm/content/config/tsconfig.html但提防訂購疼痛(您需要使用files訂購):https://basarat.gitbooks.io/typescript/content/docs/tips/outFile.html

改爲使用模塊。

更多

https://basarat.gitbooks.io/typescript/content/docs/project/modules.html

+1

我會擴大答案多一點,少依賴外部鏈接到您自己的網站。儘管如此,答覆仍然有幫助和正確。順便說一句,感謝這本書的精彩作品,我經常參考它。 –

0

謝謝您的回答,basarat。

我用命名空間因爲我不希望建立類似RequireJS,通過模塊需要。但是,如果我理解得好,這不是解決我的問題的正確方法。

我試圖按照這個例子(typescript + angular 1):hottowel-angular-typescript by John Papa,但它真的是一個很好的例子嗎?我的意思是,我真的不想在每個類/接口/ const ...的名字空間前綴!

有沒有文件模塊的另一種解決方案?