Можно ли использовать элементы Array в качестве индексов T? ⇐ Javascript
Можно ли использовать элементы Array в качестве индексов T?
Привет, я хочу создать функцию, которая принимает два параметра: массив объектов «T[]» и массив полей T. Однако я продолжаю получать следующую проблему в строке, где я вызываю el[ столбец]
Аргумент типа «T[keyof T]» нельзя назначить параметру типа «строка». Введите 'T[строка] | Т[число] | T[symbol]' не может быть назначен типу 'string'. Тип «T[string]» нельзя назначить типу «string».(2345) Код следующий:
пользователь интерфейса { имя: строка; возраст: номер; фамилия: строка; } константные данные: пользователь[] = [ { имя: 'фу', возраст: 21, фамилия: 'бар', }, { имя: 'фу', возраст: 21, фамилия: 'баз', }, { имя: 'фу', возраст: 21, фамилия: 'Бакс', }, ]; function printLastName(data: T[], cols: Array) { data.forEach((el) => { пусть сообщение = ''; cols.forEach((col) => { msg = msg.concat(el[col]); }); console.log(сообщение); }); } printLastName(data, ['имя', 'фамилия']);
Привет, я хочу создать функцию, которая принимает два параметра: массив объектов «T[]» и массив полей T. Однако я продолжаю получать следующую проблему в строке, где я вызываю el[ столбец]
Аргумент типа «T[keyof T]» нельзя назначить параметру типа «строка». Введите 'T[строка] | Т[число] | T[symbol]' не может быть назначен типу 'string'. Тип «T[string]» нельзя назначить типу «string».(2345) Код следующий:
пользователь интерфейса { имя: строка; возраст: номер; фамилия: строка; } константные данные: пользователь[] = [ { имя: 'фу', возраст: 21, фамилия: 'бар', }, { имя: 'фу', возраст: 21, фамилия: 'баз', }, { имя: 'фу', возраст: 21, фамилия: 'Бакс', }, ]; function printLastName(data: T[], cols: Array) { data.forEach((el) => { пусть сообщение = ''; cols.forEach((col) => { msg = msg.concat(el[col]); }); console.log(сообщение); }); } printLastName(data, ['имя', 'фамилия']);
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение