0
나는 사소한 일을하려한다. 유형이 지정된 객체를 함수에 전달하고, 알려진 키를 사용하여이를 증가시키고, 두 객체를 교차하는 유형을 반환한다. 어떻게에 T
을 강요 할스프레드 연산자로 Typescript insection
:
는다음 코드는 내가 ...input
확산 연산자에 다음과 같은 오류를 얻을
interface Success {
success: boolean
}
interface Named {
name: string
}
type Resolver<T> = Success & T
function test<T>(input: T): Resolver<T> {
return {
success: true,
...input
}
}
const person: Named = { name: 'Bob' };
const res = test<Named>(person);
// `res.success` and `res.name` are inferred
그러나 나에게 대부분의 방법을 얻을 것으로 보인다 물건이 될까? 색인화 된 인터페이스를 작성하여 확장했지만 동일한 오류가 지속됩니다.
@jonrsharpe - 그게, 같은 오류를 시도했습니다. 'T extends object'와'T extends {} '와 동일합니다. –
이 문제와 관련하여 공개 문제가있는 것 같습니다. https://github.com/Microsoft/TypeScript/pull/13288. 그 동안 ... "어떤 것으로 든 입력"이 작동합니다. – jonrsharpe