That is because setState() calls the render() function of your component.
Last year, I created this diagram

You can see that after therender() function, the componentDidMount() function will be called by React. When you put a setState() call in componentDidMount() then you are causing the entire component tree be re-rendered not only the current component - not to forget, the current component did just finished with rendering.
What you really want to use is props instead of state.
Edit: The picture ...
Initial Render - - - - - - - - -> Props Change - - - - - - - - - -> State Change - - - - - - - - - -> Component Unmount
+---------------------------+
| displayName |
+---------------------------+
+---------------------------+
| statics |
+---------------------------+
+---------------------------+
| mixins |
+-------------+-------------+
|
+-------------v-------------+
| propTypes |
+-------------+-------------+
|
+-------------v-------------+ +---------------------------+
| getInitialProps | | componentWillReceiveProps |
+-------------+-------------+ +-------------+-------------+
| |
+-------------v-------------+ +-------------v-------------+ +---------------------------+
| getInitialState | | shouldComponentUpdate | | shouldComponentUpdate |
+-------------+-------------+ +-------------+-------------+ +-------------+-------------+
| | |
+-------------v-------------+ +-------------v-------------+ +-------------v-------------+
| componentWillMount | | componentWillUpdate | | componentWillUpdate |
+-------------+-------------+ +-------------+-------------+ +-------------+-------------+
| | |
+-------------v-------------+ +-------------v-------------+ +-------------v-------------+
| render | | render | | render |
+-------------+-------------+ +-------------+-------------+ +-------------+-------------+
| | |
+-------------v-------------+ +-------------v-------------+ +-------------v-------------+
| componentDidMount | | componentDidUpdate | | componentDidUpdate |
+-------------+-------------+ +-------------+-------------+ +-------------+-------------+
| | |
| | | +---------------------------+
+---------------------------------+----------------------------------+------------------> componentWillUnmount |
+---------------------------+