I've been using controlled components for near everything in my application as that has been the recommended way to go, and I subscribe to the idea that React should be in control of this state when possible.
However, I recently went through @ryanflorence's Advanced React course—which is a wonderful collection and breakdown of some powerful (and still uncommon) patterns available in React—and the last lecture is on controlled components.
At around 17:40 in the lecture video, Ryan does something very interesting. He writes some code that looks like this:
<Tabs
defaultActiveIndex={this.state.currentTab}
onChange={(index) => {