In ReactJS trying to get params but I get property 'id' does not exist on type '{}' In ReactJS trying to get params but I get property 'id' does not exist on type '{}' typescript typescript

In ReactJS trying to get params but I get property 'id' does not exist on type '{}'


You can specify the type of the matched route parameters in the type parameter of RouteComponentProps, so the error should disappear if you replace

class FetchData extends React.Component<RouteComponentProps<{}>, FetchDataExampleState> {

with

interface RouteParams {id: string, param2?: string}class FetchData extends React.Component<RouteComponentProps<RouteParams>, FetchDataExampleState> {


For hooks:

export interface IUserPublicProfileRouteParams {    userId: string;    userName: string;}const {userId, userName} = useParams<IUserPublicProfileRouteParams>();


With a React Function Component this would work:

import React from "react";import { match } from "react-router-dom";export interface AuditCompareRouteParams {  fileType: string;}export const Compare = ({ match }: { match: match<AuditCompareRouteParams> }) => {  console.log(match.params.fileType);};