32 lines
973 B
Plaintext
32 lines
973 B
Plaintext
=== tests/cases/compiler/tsxInvokeComponentType.tsx ===
|
|
/// <reference path="react16.d.ts" />
|
|
import React, { ComponentType } from "react";
|
|
>React : typeof React
|
|
>ComponentType : any
|
|
|
|
declare const Elem: ComponentType<{ someKey: string }>;
|
|
>Elem : React.ComponentType<{ someKey: string; }>
|
|
>someKey : string
|
|
|
|
const bad = <Elem />;
|
|
>bad : JSX.Element
|
|
><Elem /> : JSX.Element
|
|
>Elem : React.ComponentType<{ someKey: string; }>
|
|
|
|
const good = <Elem someKey="ok" />;
|
|
>good : JSX.Element
|
|
><Elem someKey="ok" /> : JSX.Element
|
|
>Elem : React.ComponentType<{ someKey: string; }>
|
|
>someKey : string
|
|
|
|
declare const Elem2: ComponentType<{ opt?: number }>;
|
|
>Elem2 : React.ComponentType<{ opt?: number | undefined; }>
|
|
>opt : number | undefined
|
|
|
|
const alsoOk = <Elem2>text</Elem2>;
|
|
>alsoOk : JSX.Element
|
|
><Elem2>text</Elem2> : JSX.Element
|
|
>Elem2 : React.ComponentType<{ opt?: number | undefined; }>
|
|
>Elem2 : React.ComponentType<{ opt?: number | undefined; }>
|
|
|