Я получаю ошибку при доступе к свойству length
. Я понимаю, что мог бы решить эту проблему, только однажды получив объект, а затем выполнив проверку undefined
. Или просто добавьте !
. Но я хочу понять, почему это происходит, и выяснить, есть ли более хорошее решение. Вот надуманный пример:
type MyMap<K extends string> = { [key in K]: string|undefined }
const getValueLength = (tmp:MyMap<string>, key:string) => {
return tmp[key] !== undefined && tmp[key].length
}
Я запускаю машинописный текст 3.3 в строгом режиме.
Вот аналогичный вопрос , где проблема заключалась в том, что проверка была сделана внутри другой функции, здесь это не проблема.