1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
=== tests/cases/compiler/reactReadonlyHOCAssignabilityReal.tsx ===
/// <reference path="react16.d.ts" />
import * as React from "react";
>React : typeof React
function myHigherOrderComponent<P>(Inner: React.ComponentClass<P & {name: string}>): React.ComponentClass<P> {
>myHigherOrderComponent : <P>(Inner: React.ComponentClass<P & { name: string; }, any>) => React.ComponentClass<P, any>
>Inner : React.ComponentClass<P & { name: string; }, any>
>React : any
>name : string
>React : any
return class OuterComponent extends React.Component<P> {
>class OuterComponent extends React.Component<P> { render() { return <Inner {...this.props} name="Matt"/>; } } : typeof OuterComponent
>OuterComponent : typeof OuterComponent
>React.Component : React.Component<P, {}, any>
>React : typeof React
>Component : typeof React.Component
render() {
>render : () => JSX.Element
return <Inner {...this.props} name="Matt"/>;
><Inner {...this.props} name="Matt"/> : JSX.Element
>Inner : React.ComponentClass<P & { name: string; }, any>
>this.props : Readonly<{ children?: React.ReactNode; }> & Readonly<P>
>this : this
>props : Readonly<{ children?: React.ReactNode; }> & Readonly<P>
>name : "Matt"
}
};
}
|