J'utilise TypeScript et je vois l'erreur suivante
[ts] L'élément a implicitement un type 'any' car le type '{}' n'a pas de signature d'index. [7017]
const store = {};
setItem: jest.fn((key, value) => {
store[key] = value.toString();
})
Je peux le réparer en paramétrant le magasin comme ça donc
const store: any = {};
mais je voudrais le taper, mais je ne sais pas comment faire cela. Quelqu'un peut-il aider?
Eh bien, quel genre de type voulez-vous qu'il ait? S'il ne s'agit que d'une simple paire clé-valeur, cela suffira:
type Dict = { [key: string]: string };
const store: Dict = {};
store['foo'] = 'bar';
Modifier (juin 2019)
TypeScript a également un type intégré appelé Record
qui est destiné à ce cas d'utilisation - tant que votre type n'est pas censé en avoir touches prédéfinies!
const store: Record<string, string> = {};
store.foo = 'bar';