Я пытаюсь получить следующий код для компиляции и запуска в TypeScript.
Я не уверен, почему funcMap
вызывает у меня проблемы. Если я попробую это в чистом JavaScript, мне скажут, что this.funcMap.k1
не является функцией?
const obj = {
foo: function () { console.log("foo") },
bar: function () { console.log("bar") },
funcMap: {
k1: this.foo,
k2: this.bar
},
dump: function () {
this.funcMap.k1(); // --> foo
this.funcMap["k2"](); // --> bar
}
}
obj.dump();
Сообщение об ошибке:
main.ts:7:14 - error TS7017: Element implicitly an 'any' type
because type 'typeof globalThis' no index signature.
7 k1: this.foo,
~~~
main.ts:8:14 - error TS7017: Element implicitly an 'any' type
because type 'typeof globalThis' no index signature.
8 k2: this.bar
~~~