Object Properties 하고 싶어요.
6159 단어 TypeScripttypeTStech
직접 사용하세요.
TL;DR
강제출연의 강제코드는 다음과 같다.
더 좋은 방법과 쓰기 방법이 있다면 꼭 메모를 남겨주세요.
export function pickInstance<K>(instance: K, ...pickProperties: (keyof K)[]): Pick<K, typeof pickProperties[number]> {
return <Pick<K, typeof pickProperties[number]>>pickProperties.reduce<Partial<K>>((i, p) => {
i[p] = instance[p]
return i
}, {})
}
export function ommitInstance<K>(instance: K, ...omitProperties: (keyof K)[]): Omit<K, typeof omitProperties[number]> {
return <Omit<K, typeof omitProperties[number]>>omitProperties.reduce<Partial<K>>((i, p) => {
delete i[p]
return i
}, Object.assign({}, instance))
}
왜 흑마술을 해요?
'어떤 반의 일부 속성을 제외한 나머지 속성'을 사용하고 싶습니다.매번 속성이 증가할 때마다 코드를 다시 쓰는 것은 매우 번거롭다.타입 스크립트의 유틸리티 타입처럼 쓰면 편할 것 같아요.후회 안 했어.
(직업: 자칭 시스템 엔지니어 30대 남성)
Reference
이 문제에 관하여(Object Properties 하고 싶어요.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/april418/articles/34007597f6ae27텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)