Я пытаюсь уменьшить Object.keys
, например:
const example = { hello: true }
Object.keys(example).reduce((acq, key) => {
const value = example[key]
return acq
}, {})
По какой-то причине я получаю сообщение об ошибке типа под example[key]
(параметр) key: string
Элемент неявно имеет тип 'any', поскольку выражение типа 'string' не может использоваться для индексации типа '{hello: boolean; } '. Индексная подпись с параметром типа 'строка' для типа '{hello: boolean; } '. (7053)
Я создал свою собственную getKeys
функцию с обобщенным c, который имеет типизацию, которую я ожидал:
function getKeys <T>(g: T) {
return Object.keys(g) as (keyof T)[]
}
const example = { hello: true }
getKeys(example).reduce((acq, key) => {
const value = example[key]
return acq
}, {})
Однако я' м смотрю, можно ли такое без накрутки Object.keys
.