Тип 'номер' не может быть назначен типу 'T [K]' - PullRequest
0 голосов
/ 24 апреля 2020

У меня есть код ниже. В этой точке list[0][prop] = source.id; я получаю сообщение об ошибке Тип 'номер' нельзя назначить типу 'T [K]' . Я не понимаю почему. По моему мнению, это должно работать, потому что я объявляю T как объект со строковым индексатором и значениями типа any.

Кто-нибудь знает, что я делаю неправильно?

class Test {

    private setValue<T extends { [K: string]: any }, K extends keyof T>(list: T[], prop: K) {
        const source = { id: 123 };
        list[0][prop] = source.id;
    }

}

Ссылка на детскую площадку: https://www.typescriptlang.org/play/index.html?ssl=1&ssc=1&pln=2&pc=22#code / MYGwhgzhAEAqCmEAu0DeAod1vQA4CcBLANzCXmgniQDUwQBXeAHlmngA9yA7AExlTQA2gGkAXJSRFuAcwC6EsNwCe0AL4AaaCPZd4fGAGt4ygPYAzOAD4AFCELIJsIXK0FTuCSICUaLDgDgU25kSlMGfGAKAF40aEJeCQBGACYAZnUAbn8A7HtkIQAGOSF3XDloWIhwyPgAOgTsgLVMFqA

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...