はい、できます。
Ticketsコンポーネント内でチケットUIのhtml要素を返す関数を実装できます。しかし、私はそれがベストプラクティスではないと思います。なぜなら、それぞれのUIコンポーネント項目をReact Componentとして分割する必要があるからです。
https://jsfiddle.net/rwnvt8vs/
ticket: function(ticket = {name: '', quantity: '', price: null}){
return (
<ul>
<li>
<label>Ticket Name</label>
<input className="ticket-name" type="text" placeholder="E.g. General Admission" value={ticket.name} />
</li>
<li>
<label>Quantity Available</label>
<input className="quantity" type="number" placeholder="100" value={ticket.quantity} />
</li>
<li>
<label>Price</label>
<input className="price" type="number" placeholder="25.00" value={ticket.price} />
</li>
<li>
<button type="button" className="delete-ticket" onClick={this.deleteTicket}><i className="fa fa-trash-o delete-ticket"></i></button>
</li>
</ul>
);
},
onClick: function() {
var newTicket = this.ticket();
var tickets = this.state.tickets.push(newTicket);
this.setState({tickets: tickets});
},
これは何を望みですか? https://jsfiddle.net/mayankshukla5031/07v7qfzo/ボタンのために別のコンポーネントを作成する必要はなく、新しい要素を 'state'にプッシュする代わりに、作成する必要のある子コンポーネントの数だけをカウントするようにしてください。次に、ループを使用して、子コンポーネントの等価番号を作成します。 –