how to use class component in typescript react
// Class Component React TypeScript ( with props and state usage ):
import React, { Component } from 'react';
type Props = { head ?: string , age ?: number };
type State = { num: number };
type DefaultProps = { head : string, age : string }
/* <Props, State, DefaultProps> tell that
these initialised types will be used in the class. */
class Counter extends Component <Props, State, DefaultProps> {
/* Default props appear when no value for the prop
is present when component is being called */
static defaultProps : DefaultProps = {
head: "Heading is Missing",
age: "Age is missing",
};
// Always write state above the render() method.
state: State = {
num: 0,
};
render() {
const add = () => this.setState({ num: this.state.num + 1 }) ;
return (
<div>
<h1> { this.props.head } </h1>
<p> Age: { this.props.age } </p> <br />
<h3> { this.state.num } </h3>
<button onClick={add}>Add 1</button>
</div>
);
}
}
export default Counter;