>source

두 개의 키가있는 js 객체가 있습니다. foobar .

const x = { foo: '', bar: '' }

또한 나는 abc 값을 취하는 함수 (값은 foo 또는 bar 뿐).

function abc(value: string) {
 const selected = x[value];
}

현재 값은 문자열 유형입니다. 하지만 갖고 싶어 foo 또는 bar (내가 그들을 가지고 있기 때문에 x 목적). 나는하려고

 function abc(value: typeof x)

그러나 typescript는 그것을 받아들이지 않습니다.

예상대로 작동하도록 코드를 변경하려면 어떻게해야합니까?

  • 답변 # 1

    typeof X의 keyof를 사용하면 다음과 같은 변수 X 유형의 각 키를 추출합니다.

    {
      foo: string;
      bar: string;
    }
    
    

    이 기능은 다음과 같아야합니다.

     function abc(value: keyof typeof x)
    
    

    값 매개 변수의 유형은 다음과 같습니다. "foo" | "bar"

  • 이전 vb.net - Visual Basic Forms에서 클릭시 동적으로 생성 된 단추 숨기기
  • 다음 post - OVH"get_version_v3 ()에 예기치 않은 키워드 인수 'auth'가 있습니다"