TypeScript: 인터페이스의 속성만 매개변수로 허용
2933 단어 typescriptjavascriptprogramming
매우 간단합니다. keyof 연산자를 사용해야 합니다!
상호 작용
먼저 주소 인터페이스를 확인해야 합니다. 아래는 우리가 사용하는 것의 보다 단순화된 버전이지만 이 예제에 적합합니다.
interface Address {
streetname: string;
housnumber: number;
postal: string;
city: string;
}
keyof 연산자 사용
keyof operator 을 사용하면 매개변수가 인터페이스의 속성과 같아야 한다고 말할 수 있습니다.
function fakeFunc(param: keyof Address): void {
console.log(param);
}
이제 우리는 이 함수가 Address 인터페이스에 존재하는 매개변수와 함께만 사용되는지 확인할 수 있습니다. 그렇지 않으면 TypeScript 인터페이스를 얻게 됩니다.
기능 확인
example에서 'streetname' 매개변수가 허용되지만 'random' 매개변수가 "'"random"' 유형의 인수를 'keyof Address' 유형의 매개변수에 할당할 수 없습니다."라는 오류를 표시하는 것을 볼 수 있습니다. 인터페이스에 없기 때문입니다. (컴파일 오류를 보려면 확인을 클릭해야 합니다CodeSandbox )
감사!
이 이야기를 읽은 후 새로운 것을 배웠거나 새로운 것을 창조하도록 영감을 받았기를 바랍니다! 🤗 그렇다면 이메일(이 페이지 상단으로 스크롤)을 통해 구독하거나 여기 Hashnode에서 저를 팔로우하세요.
Did you know that you can create a Developer blog like this one, yourself? It's entirely for free. 👍💰🎉🥳🔥
답변으로 질문이나 할 말이 남았다면 아래로 스크롤하여 메시지를 입력하세요. 비공개로 하고 싶을 때 를 보내주세요. 제 디엠은 언제나 열려있습니다😁
Reference
이 문제에 관하여(TypeScript: 인터페이스의 속성만 매개변수로 허용), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/devbyrayray/typescript-only-allow-a-property-from-interface-as-parameter-445e텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)