В ES6 JavaScript есть спред (...), который позволяет перевернуть массив данных и добавить туда новый. Попробуйте так, вы на React JS пишите, он поддерживает этот синтаксис.
Либо создай компонент, и пропусти его через .map() мутируй через стэйт массив данных, и при клике будет клонироваться (повторятся) этот компонент (в массиве к примеру будет input type, name, id и ещё что-то, что позволить использовать этот инпут.) Не забывай об отписке от события, иначе будет утечка памяти.