File: jsxElementTypeLiteral.errors.txt

package info (click to toggle)
node-typescript 5.2.2-1
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 497,488 kB
  • sloc: javascript: 2,107,274; makefile: 6; sh: 1
file content (37 lines) | stat: -rw-r--r-- 1,506 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
27
28
29
30
31
32
33
34
35
36
37
jsxElementTypeLiteral.tsx(16,10): error TS2786: 'span' cannot be used as a JSX component.
  Its type '"span"' is not a valid JSX element type.
jsxElementTypeLiteral.tsx(20,9): error TS2339: Property 'ruhroh' does not exist on type 'JSX.IntrinsicElements'.
jsxElementTypeLiteral.tsx(20,10): error TS2786: 'ruhroh' cannot be used as a JSX component.
  Its type '"ruhroh"' is not a valid JSX element type.


==== jsxElementTypeLiteral.tsx (3 errors) ====
    /// <reference path="/.lib/react16.d.ts" />
    import * as React from "react";
    
    declare global {
      namespace JSX {
        // This should only use keys of JSX.IntrinsicElements.
        // Diverging here to illustrate different error messages.
        type ElementType = "div";
      }
    }
    
    // should be fine - `ElementType` accepts `div`
    let a = <div />;
    
    // should be an error - `ElementType` does not accept `span`
    let b = <span />;
             ~~~~
!!! error TS2786: 'span' cannot be used as a JSX component.
!!! error TS2786:   Its type '"span"' is not a valid JSX element type.
    
    // Should be an error.
    // `ruhroh` is in neither `IntrinsicElements` nor `ElementType`
    let c = <ruhroh />;
            ~~~~~~~~~~
!!! error TS2339: Property 'ruhroh' does not exist on type 'JSX.IntrinsicElements'.
             ~~~~~~
!!! error TS2786: 'ruhroh' cannot be used as a JSX component.
!!! error TS2786:   Its type '"ruhroh"' is not a valid JSX element type.