в текущем формате юза я никогда не задаю преобразователь но лучше было бы чтоб результат был returnType от колбэка сейчас там строковое представления ключа
без преобразователя такой код пашет const getObjectFromList = <T extends string>(list: T[]) => { const obj: Record<T, string> = {} as Record<T, string>; list.forEach(val => { obj[val] =`${val}`; }); return obj; } с reduce видимо не оч хорошо тс дружит осталось сюда преобразователь запихнуть как-то
const getObjectFromList = <T extends string, U>(list: T[], callback?: (val: T) => U): Record<T, T | U> => { const obj = {} as Record<T, T | U>; list.forEach(val => { obj[val] = callback ? callback(val) : val; }); return obj; }
Обсуждают сегодня