판별 가능한 결합 어셈블리를 사용한 Proops 제어
6466 단어 ReactTypeScripttech
판별할 수 있는 연합형
type C = A | B
는 A와 B가 공통된 속성을 가진 유형으로, 이 속성의 값을 관찰해 C가 A인지 B인지 판단할 수 있다.자세한 건 이쪽을 보세요.
어셈블리의 Proops 제어
예를 들어
type
와 같은 Proopstype === 'リンク'
를 준비하면 링크를 표시하고 type === 'button'
라면 디스플레이 단추와 같은 구성 요소를 실현한다.이 경우 링크는 href가 필요하지만, onClick에서 사용하는 함수는 필요하지 않습니다.반대로, 단추는 href가 필요하지 않지만, onClick에서 사용하는 함수가 필요합니다.이루어지다
import { VFC } from 'react'
type LinkProps = {
type: 'link'
href: string
}
type ButtonProps = {
type: 'button'
onClick: () => void
}
type Props = LinkProps | ButtonProps
const LinkOrButton: VFC<Props> = (props) => {
if (props.type === 'link') {
return <a href={props.href}>リンク</a>
} else {
return <button onClick={props.onClick}>ボタン</button>
}
}
export default LinkOrButton
어셈블리를 사용하는 경우
<LinkOrButton type="link" href="http://example.com/" />
<LinkOrButton type="button" onClick={() => {alert('hello')}} />
구성 요소에 사용되지 않은 Proops를 제출하지 않고도 판별 가능한 UNION 유형을 사용합니다.
Reference
이 문제에 관하여(판별 가능한 결합 어셈블리를 사용한 Proops 제어), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/yukishinonome/articles/b1b4b0d890468b텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)