TypeScriptを使用していますが、次のエラーが表示されます
[ts]型 '{}'にはインデックス署名がないため、要素には暗黙的に 'any'型があります。 [7017]
const store = {};
setItem: jest.fn((key, value) => {
store[key] = value.toString();
})
ストアをそのように設定することで修正できます
const store: any = {};
しかし、私はそれを入力したいのですが、これを行う方法を理解することはできません。誰でも助けることができますか?
さて、どのようなタイプにしたいですか?単純なキーと値のペアの場合、これで十分です。
type Dict = { [key: string]: string };
const store: Dict = {};
store['foo'] = 'bar';
編集(2019年6月)
TypeScriptには、 Record
と呼ばれる組み込み型もあります。これは、このユースケースを対象としています-型が事前定義されたキー!
const store: Record<string, string> = {};
store.foo = 'bar';