2017-12-14 1 views
0

다음은 내 코드typescript에서 인터페이스 객체로부터 유형을 설정하는 방법은 무엇입니까?

interface platformItem { 
    Result: { 
     name: string; 
     age: number; 
    }; 
} 

const man: platformItem.Result; 

vscode는, platformItem로부터 수출 멤버 없습니다 내가 platformItem.result를 사용할 수없는 것 같습니다 경고를 보여줄 것이다.

+0

뜻 'platformItem.Result' 무엇입니까? – zerkms

+0

은 남자가 이름과 나이를 가져야 함을 의미합니다. – Dreams

답변

2

+0

올바른 코드입니다. 이것은 [색인 된 액세스] (https://www.typescriptlang.org/docs/handbook/advanced-types.html)로 알려져 있습니다. –

0

vscode platformItem['Result']에 나를 위해이 작업은 다음 세 가지 방법을 제공합니다. Playground

Indexed access

interface platformItem { 
    Result: { 
     name: string; 
     age: number; 
    }; 
} 

const man: platformItem["Result"] = { name: "Max Power", age: 30 }; 

Type Aliases

type Man = { 
    name: string; 
    age: number; 
}; 

interface platformItem { 
    Result: Man; 
} 

const man: Man = { name: "Max Power", age: 30 }; 

Declaration Merging

namespace platformItem { 
    export type Result = { 
     name: string; 
     age: number; 
    }; 
} 
interface platformItem { 
    Result: platformItem.Result; 
} 

const man: platformItem.Result = { name: "Max Power", age: 30 }; 
관련 문제