1
1
/* eslint-disable @typescript-eslint/no-unused-vars, no-inner-declarations */
2
- import { Component , ReactElement } from 'react'
2
+ import { createElement , Component , ReactElement , ReactNode } from 'react'
3
+ import type { ComponentType } from 'react'
3
4
import * as React from 'react'
4
- import * as ReactDOM from 'react-dom'
5
+ import { render } from 'react-dom'
5
6
import {
6
7
configureStore ,
7
8
createSlice ,
@@ -91,15 +92,15 @@ connect<ICounterStateProps, ICounterDispatchProps, {}, {}, CounterState>(
91
92
) ( Counter )
92
93
93
94
class App extends Component < any , any > {
94
- render ( ) : React . ReactNode {
95
+ render ( ) : ReactNode {
95
96
// ...
96
97
return null
97
98
}
98
99
}
99
100
100
101
const targetEl = document . getElementById ( 'root' )
101
102
102
- ReactDOM . render (
103
+ render (
103
104
< Provider store = { store } >
104
105
< App />
105
106
</ Provider > ,
@@ -129,7 +130,7 @@ type AddTodoAction = ReturnType<typeof addTodo>
129
130
declare var todoActionCreators : { [ type : string ] : ( ...args : any [ ] ) => any }
130
131
declare var counterActionCreators : { [ type : string ] : ( ...args : any [ ] ) => any }
131
132
132
- ReactDOM . render (
133
+ render (
133
134
< Provider store = { store } >
134
135
< MyRootComponent />
135
136
</ Provider > ,
@@ -246,7 +247,7 @@ class TestComponent extends Component<TestProp, TestState> {}
246
247
const WrappedTestComponent = connect ( ) ( TestComponent )
247
248
248
249
// return value of the connect()(TestComponent) is of the type TestComponent
249
- let ATestComponent : React . ComponentType < TestProp >
250
+ let ATestComponent : ComponentType < TestProp >
250
251
ATestComponent = TestComponent
251
252
ATestComponent = WrappedTestComponent
252
253
@@ -271,11 +272,8 @@ function HelloMessage(props: HelloMessageProps) {
271
272
return < div > Hello { props . name } </ div >
272
273
}
273
274
let ConnectedHelloMessage = connect ( ) ( HelloMessage )
274
- ReactDOM . render (
275
- < HelloMessage name = "Sebastian" /> ,
276
- document . getElementById ( 'content' )
277
- )
278
- ReactDOM . render (
275
+ render ( < HelloMessage name = "Sebastian" /> , document . getElementById ( 'content' ) )
276
+ render (
279
277
< ConnectedHelloMessage name = "Sebastian" /> ,
280
278
document . getElementById ( 'content' )
281
279
)
@@ -324,7 +322,7 @@ namespace TestTOwnPropsInference {
324
322
state : string
325
323
}
326
324
327
- class OwnPropsComponent extends React . Component < OwnProps & StateProps , { } > {
325
+ class OwnPropsComponent extends Component < OwnProps & StateProps , { } > {
328
326
render ( ) {
329
327
return < div />
330
328
}
@@ -352,28 +350,28 @@ namespace TestTOwnPropsInference {
352
350
) ( OwnPropsComponent )
353
351
354
352
// @ts -expect-error
355
- React . createElement ( ConnectedWithoutOwnProps , { anything : 'goes!' } )
353
+ createElement ( ConnectedWithoutOwnProps , { anything : 'goes!' } )
356
354
357
355
// This compiles, as expected.
358
- React . createElement ( ConnectedWithOwnProps , { own : 'string' } )
356
+ createElement ( ConnectedWithOwnProps , { own : 'string' } )
359
357
360
358
// This should not compile, which is good.
361
359
// @ts -expect-error
362
- React . createElement ( ConnectedWithOwnProps , { missingOwn : true } )
360
+ createElement ( ConnectedWithOwnProps , { missingOwn : true } )
363
361
364
362
// This compiles, as expected.
365
- React . createElement ( ConnectedWithTypeHint , { own : 'string' } )
363
+ createElement ( ConnectedWithTypeHint , { own : 'string' } )
366
364
367
365
// This should not compile, which is good.
368
366
// @ts -expect-error
369
- React . createElement ( ConnectedWithTypeHint , { missingOwn : true } )
367
+ createElement ( ConnectedWithTypeHint , { missingOwn : true } )
370
368
371
369
interface AllProps {
372
370
own : string
373
371
state : string
374
372
}
375
373
376
- class AllPropsComponent extends React . Component < AllProps & DispatchProp > {
374
+ class AllPropsComponent extends Component < AllProps & DispatchProp > {
377
375
render ( ) {
378
376
return < div />
379
377
}
0 commit comments