React TypeScript
React TS- Functional Component with State & Class Component with State.
State in function components
- To have type-safety for the state in functional components, we don't necessarily need to modify our code: The useStatehook inherits the type from the value we use to initialize it.
- If we use a more complex type or don't initialize the state, we can pass the type like the following:
   React Typescript Functional Component with State.
   import React, { useState } from "react";
   interface IState{
    name:String,
    title:String,
   }
//    interface IPROPS {
//     name : String;
//     title : String;
//    }
    var Customer:React.FC =()=>{
        var [state,setState] = useState<IState>({
            name:'code guruva',
            title:'this is full stack development',
        })
        return(
            <div>
                {/* <h2>this is customer tsx component</h2>
                <h3>Name : {name}</h3>
                <h3>Name : {title}</h3> */}
                <h2>for state values</h2>
                <h3>user name : {state.name}</h3>
                <h3>user name : {state.title}</h3>
            </div>
        )
    }
    export default Customer;
   React Typescript Class Component with State.
    import React from "react";
    interface IState{
        myname:String,
        title:String,
    }
    interface IPROPS {
        userid:number;       
    }
    export default class Users extends React.Component<IPROPS,IState>{
        //eslint-disable-next-line
        constructor(props:IPROPS){
            super(props);
            this.state= {
                myname:"code guruva",
                title:"full stack developer"
            }
        }
        render() {
            // destructor 
            var {userid} = this.props;
            var {myname, title} = this.state;
            return (
                <div>
                    <h2>Welcome to React TSX Class Component</h2>
                    <h5>UserId : {userid}</h5>
                    <h2>this is state</h2>
                    <h5>Names :{myname}</h5>
                    <h5>Names :{title}</h5>
                </div>
            )
        }
    }
 
 
 
