#javascript #string #typescript #types
#javascript #строка #typescript #типы
Вопрос:
Есть ли в typescript какой-либо способ динамического объединения имен ключей / динамического объединения строковых типов? что я имею в виду под этим :
type JoinString<A extends string, B extends string> = /*some magic*/
const example = {
foo: "b",
bar: "c"
}
type GetAnotherKeys<T> = {
JoinString<[TKey in keyof T], "_">: T[Tkey]
}
type Result = GetAnotherKeys<typeof example>;
/*
Result ={
foo_:string
bar_:string
}
*/
Ответ №1:
Вот простой пример:
type AddPrefix<T extends string>=`${T}_`
type Keys={
name:string;
surname:string;
}
type MapPrefix<T>={
[P in keyof T as AddPrefix<string amp; P>]:T[P]
}
type Result = MapPrefix<Keys>
Более подробную информацию вы можете найти здесь
Комментарии:
1. спасибо вам, добрые джентльмены, это настоящая удача, что это обновление было неделю назад
2. @MaciejDot Добро пожаловать. Вы можете принять этот ответ, это поможет другим людям