Profile with static and input modes (View and Update)
Other than your handleOnChange handler is mutating state, this code seems understandable and readable enough to me, only minor comments about code style.
React-ness
React's synthetic events' persist function is a void return, so I don't think the logical OR between it and the state update necessary.
Mutating-state handler with odd event persisting.
handleOnChange = key =&gt; e =&gt; e.persist() || this.setState(prevState =&gt; {
  prevState.data[key] = e.target.value; // &lt;-- this mutates existing state
  return prevState; // &lt;-- saving previous state object back in state
})

Non-mutating-state handler. React class-based component state updates are merged in, but nested state needs to have their previous state merged manually. Also, instead of persisting the event for use in the &quot;asynchronous&quot; setState, it is more common to grab the event value and let react do what it needs with the event object (i.e. return back to pool).
handleOnChange = key =&gt; e =&gt; {
  const { value } = e.target;
  this.setState(prevState =&gt; ({
    data: {
      ...prevState.data,
      [key]: value,
    },
  }));
}

Readability
All other comments I'd have on the code are more about the readability, i.e. appropriate usage of whitespace, 2-space vs 4-space tabs, etc.. but these are largely dev team driven and tend to be subject to opinion.
Common practices though are

Single line space between code blocks (functions and any other logical &quot;chunk&quot; of code
Using curly brackets for functions that are more than simply an implicit return, i.e. they have more than a single expression
Using appropriate line breaks when lines of code get too long, usually around 80 chars

Maintainability/Reusability
The one remaining comment I'd have would be to try and abstract the this.getStaticOrInput logic and utilities into a separate react component, something like EditableInput that handles its toggling state internally.
&lt;EditableInput name=&quot;first_name&quot; value={...} etc.. /&gt;
&lt;EditableInput name=&quot;last_name&quot; value={...} etc.. /&gt;
...