React - jak zupdatować widok po POST bez reloadu strony?

0

Probuje zrobic to tak, ale wyskakuje mi jakiś błąd DOMException: An attempt was made to use an object that is not, or is no longer, usable

axios.post("http://localhost:8080/api/users",payload)
                 .then((response)=> {
                     console.log(response);
                     this.setState({users:response.data});
                     },(error) => {console.log(error)}
 );

0

W której metodzie umieszczasz ten kod - componentDidMount?
Czy błąd wyskakuje tylko wtedy, gdy uruchamiasz this.setState()?

0

Polecał bym zrobić komponent, w którym to api jest potrzebne i w nim użył axiosa i tak na przykładzie komponentu funkcyjnego.

const ApiResult: FC<{payload: unknown}> = (props) => {
  const { payload } = props;
  const [state, setState] = useState<{users: Array<unknown>}>();
  useEffect(() => {
    axios.post("http://localhost:8080/api/users",payload)
      .then((response)=> {
        console.log(response);
        setState({users:response.data});
      },(error) => {console.log(error)}}
  , [])
  return <div>{JSON.stringify(state)}</div>
}
const App = () => <div><.../><ApiResult {...{payload: ??}}/></div>

1 użytkowników online, w tym zalogowanych: 0, gości: 1