私は、一連の関連クラスをパッケージ化し、1つのモジュールからエクスポートしました。何かのように:用-で使用することになりさておきcommonjsモジュールの輸出名の上にその繰り返しを持ちモジュールの名前空間オブジェクトのインデックス署名の入力
import * as States from "./states.ts"
for(let stateExportName in States) {
let thisStateConstructor = States[stateExportName];
// ... do something.
}
:今
// states.ts
export {default as Alabama} from "./alabama";
export {default as Alaska} from "./alaska";
//...
、他の場所のコードで、私は以上のすべての関連するクラスを反復処理したいです(上記のように)、es6モジュールの名前空間オブジェクトの書き出しを繰り返すのはfor-ofを使用します(モジュールnamespaceオブジェクトのes6 does define @@イテレータ以降)...どちらの場合でもこの繰り返しが可能です。
問題は、私がStates[stateExportName]
を実行したときに、「オブジェクトタイプのインデックスシグネチャに暗黙のうちに「any」タイプがあります。モジュールのインデックス署名をどこにも定義していないので、意味があります。
私の質問は:TypescriptでES6モジュールのそのような署名を定義することは可能ですか?もしそうなら、どうですか?
"いいえ "と私は考えています。私はこれについてTSリポジトリで問題を開いていきます。 anyを明示的にすることについて: ':any'を追加するとき、私は同じエラーを受け取ります。どんな考え? – Ethan