React

HTML

<div id="app"></div>

React

class TodoApp extends React.Component {

    constructor() {
        super()
        this.state = {
            input: [],
            items: [],
        }
        this.handleChangeArray = this.handleChangeArray.bind(this);
    }

    handleChangeArray(event, i) {
        let c = this.state.items;
        c[i].value = event.target.value;
        this.setState({
            items: c,
            inputs: c.map((v, i) => {
                return <input key={i} value={c[i].value}
                    onChange={(e) => this.handleChangeArray(e, i)} />
            })
        })
    };

    updateMyState(selectedOption) {
        var apiData = [{inputs: [{value: "" }]},{inputs: [{value: "" }, { value: "" }, { value: "" }]}]
        this.setState({
            items: apiData[selectedOption].inputs,
        }, () => this.setState({
            inputs: apiData[selectedOption].inputs.map((v, i) => {
                return <input key={i} value={this.state.items[i].value}
                    onChange={(e) => this.handleChangeArray(e, i)} />
            })
        }))
    }

    render() {
        return (
            <div>
                <div>{this.state.inputs}</div>
                <button onClick={() => this.updateMyState(0)}>Form 1</button>
                <button onClick={() => this.updateMyState(1)}>Form 2</button>
            </div>
        )
    }
}
ReactDOM.render(<TodoApp />, document.querySelector("#app"))