2016-07-03 22 views
6

は、私は、エクスポート機能の束とtypescriptファイルUtilsのを持っていると言うことができます名前空間内のすべての機能をエクスポートします。私はエクスポートこのフォルダにindex.d.tsファイルを追加 活字体:

export function utilOne(){} 
export function utilTwo(){} 

* Utilsのファイルから:

utils.utilOne(); 
:私の他のクラスで

export * from './Utils'; 

私は次のように、utilsの名前空間を経由して機能utilOneとutilTwoにアクセスしたいのですが

は、私はこのようにそれをインポートすることができることを知っている:

import * as utils from "./Utils"; 

しかし、私はutilsの多くを使用することになるように、私は名前空間にutilsのをエクスポートできるようにしたい、のようなもの:

export {* as utils} from './Utils'; // this doesn't work 

、次いで使用:

import * from "./Utils"; 

{utilsのよう*}のエクスポートが機能しないが。私はUtilsのすべての機能をモジュール "utils"に入れてエクスポートすることができましたが、これが良い方法かどうかはわかりません。これを行う適切な方法はありますか?

答えて

3

インポート*

から番号グローバル輸入であっても、それらをサポートする言語に悪い習慣と考えられています。 (例:python Why is "import *" bad?

JavaScript/TypeScriptはサポートしていません。結局のところfoo.barを見て、そのバーがbarの代わりにfooから来ていることを知っていて、バーがどこから来ているのかわからない(プロジェクト全体をクローンと分析しないと)。