TypeScript에서 구성 요소의 소품을 재사용하는 방법
7560 단어 uxreactjavascripttypescript
실제로 해당 구성 요소의 일부가 아니고 다른 구성 요소에서 사용되는 소품에 대한 유형을 정의하는 경우가 종종 있습니다.
간단한 예를 들어 보겠습니다.
다음 소품이 있는 부모 및 자식 구성 요소가 있다고 가정합니다.
import React from 'react';
import { Child } from './Child';
type Props = {
greeting: string;
firstName: string;
lastName: string;
};
export const Parent: React.FC<Props> = ({ greeting, firstName, lastName }) => {
return (
<>
<span> {greeting}</span>
<Child firstName={firstName} lastName={lastName} />
</>
);
};
import React from 'react';
type Props = {
firstName: string;
lastName: string;
};
export const Child: React.FC<Props> = ({ firstName, lastName }) => {
return (
<>
<div>{firstName}</div>
<div>{lastName}</div>
</>
);
};
⚠️ 문제 설명:
반복되는 소품
firstName
및 lastName
에 대한 유형도 하위 구성 요소로 전달되어야 하기 때문에 상위에서 정의됩니다. 코드 동기화 문제
💡 솔루션:
ComponentProps를 사용하여 구성 요소 유형에서 직접 Props를 추출하고 나머지 및 확산 구문을 사용하여 반복을 피할 수 있습니다.
import React, { ComponentProps } from 'react';
import { Child } from './Child';
type Props = ComponentProps<typeof Child> & {
greeting: string;
};
export const Parent: React.FC<Props> = ({ greeting, ...childProps }) => {
return (
<>
<span> {greeting}</span>
<Child {...childProps} />
</>
);
};
이익:
추신: 하위 구성 요소의 소품 중 일부만 필요한 경우 Partials를 사용할 수 있습니다.
#coding #softwareengineering #productivity #webdeveloper #cleancode #codingtips #javascript #webdev #devlife #programming #computerscience
Reference
이 문제에 관하여(TypeScript에서 구성 요소의 소품을 재사용하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/haseeb1009/how-to-reuse-components-props-in-typescript-51m4텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)