File: jsxExcessPropsAndAssignability.errors.txt

package info (click to toggle)
node-typescript 4.1.3-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 396,552 kB
  • sloc: javascript: 1,444,377; makefile: 7; sh: 3
file content (26 lines) | stat: -rw-r--r-- 1,659 bytes parent folder | download
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
tests/cases/compiler/jsxExcessPropsAndAssignability.tsx(16,6): error TS2322: Type 'ComposedComponentProps & { myProp: number; }' is not assignable to type 'IntrinsicAttributes & IntrinsicClassAttributes<Component<WrapperComponentProps, any, any>> & Readonly<{ children?: ReactNode; }> & Readonly<WrapperComponentProps>'.
  Type 'ComposedComponentProps & { myProp: number; }' is not assignable to type 'Readonly<WrapperComponentProps>'.


==== tests/cases/compiler/jsxExcessPropsAndAssignability.tsx (1 errors) ====
    /// <reference path="/.lib/react16.d.ts" />
    
    import * as React from 'react';
    
    const myHoc = <ComposedComponentProps extends any>(
        ComposedComponent: React.ComponentClass<ComposedComponentProps>,
    ) => {
        type WrapperComponentProps = ComposedComponentProps & { myProp: string };
        const WrapperComponent: React.ComponentClass<WrapperComponentProps> = null as any;
    
        const props: ComposedComponentProps = null as any;
    
        // Expected no error, got none - good
        <WrapperComponent {...props} myProp={'1000000'} />;
        // Expected error, but got none - bad!
        <WrapperComponent {...props} myProp={1000000} />;
         ~~~~~~~~~~~~~~~~
!!! error TS2322: Type 'ComposedComponentProps & { myProp: number; }' is not assignable to type 'IntrinsicAttributes & IntrinsicClassAttributes<Component<WrapperComponentProps, any, any>> & Readonly<{ children?: ReactNode; }> & Readonly<WrapperComponentProps>'.
!!! error TS2322:   Type 'ComposedComponentProps & { myProp: number; }' is not assignable to type 'Readonly<WrapperComponentProps>'.
    };