Si estoy usando const currentUserId = props.id , entonces el error será props.match no está definido , y la variable "userId" incluso no está definida cuando intento iniciar sesión en la consola. 
Luego, uso props.match.params.id , el código ni siquiera se puede leer, solo está en blanco 
También estoy tratando de modificar el código para que se convierta en const currentUserId = props.computedMatch.params.id; pero nada funciona 
Mi código:
import React, {useContext, useState, useEffect} from 'react'; import { GlobalContext } from '../context/GlobalState'; import { Link, useNavigate } from 'react-router-dom'; import { v4 as uuid } from 'uuid'; import { Form, FormGroup, Label, Input, Button } from 'reactstrap'; export const EditUser = (props) => { const [selectedUser, setSelectedUser] = useState({ id: '', name: '' }); const { users, editUser } = useContext(GlobalContext); const history = useNavigate(); const currentUserId = props.match.params.id; useEffect(() => { const userId = currentUserId; console.log(typeof userId); const selectedUser = users.find(user => user.id === Number(userId)) setSelectedUser(selectedUser) console.log(selectedUser); }, [currentUserId, users]) const onSubmit = () => { history('/'); } const onChange = (e) => { } return ( <Form onSubmit={onSubmit}> <FormGroup> <Label>Nama</Label> <Input type='text' onChange={onChange} placeholder='Ganti Nama Disini!'></Input> </FormGroup> <Button type='submit'>Edit Data</Button> <Link to="/" className="btn btn-danger ml-2" style={{ marginLeft: "10px"}}>Cancel</Link> </Form> ) }usar con enrutador
import React, {useContext, useState, useEffect} from 'react'; import { GlobalContext } from '../context/GlobalState'; import { Link, useNavigate } from 'react-router-dom'; import { withRouter } from 'react-router'; // here added import { v4 as uuid } from 'uuid'; import { Form, FormGroup, Label, Input, Button } from 'reactstrap'; const EditUser = (props) => { // here changed const [selectedUser, setSelectedUser] = useState({ id: '', name: '' }); const { users, editUser } = useContext(GlobalContext); const history = useNavigate(); const currentUserId = this.props.match.params.id; useEffect(() => { const userId = currentUserId; console.log(typeof userId); const selectedUser = users.find(user => user.id === Number(userId)) setSelectedUser(selectedUser) console.log(selectedUser); }, [currentUserId, users]) const onSubmit = () => { history('/'); } const onChange = (e) => { } return ( <Form onSubmit={onSubmit}> <FormGroup> <Label>Nama</Label> <Input type='text' onChange={onChange} placeholder='Ganti Nama Disini!'></Input> </FormGroup> <Button type='submit'>Edit Data</Button> <Link to="/" className="btn btn-danger ml-2" style={{ marginLeft: "10px"}}>Cancel</Link> </Form> ) } export default withRouter(EditUser); // here addedespero que esto se arregle
import { useParams } from 'react-router-dom'; const { id: currentUserId } = useParams();