I am studying ReactJs and faced some issues. My problem is that I have a simple app using latest ReactJs (v 18.0.0) and componentDidMount executes twice. Why?
index.js
import { createRoot } from 'react-dom/client';
import './index.css';
import App from './App';
const container = document.getElementById('root');
const root = createRoot(container);
root.render(
<React.StrictMode>
<App />
</React.StrictMode>,
);
App.js
import React, { Component } from 'react';
import './App.css';
class App extends Component {
constructor() {
super();
this.state = {
monsters: []
};
}
componentDidMount() {
fetch('https://jsonplaceholder.typicode.com/users')
.then(response => response.json())
.then(users => this.setState({ monsters: users }));
}
render() {
return (
<div className="App">
{this.state.monsters.map(monster =>
<h1 key={monster.id}>{monster.name}</h1>
)}
</div>
);
}
}
export default App;```