1,リスト操作する一番上位のコンポーネント MessageBox
2.リスト全体のコンポーネント MessageList
3.リスト1行のコンポーネント Message
3をループして描画
といった設計で描画しているのですが、
リスト1行のコンポーネントの一番最後まで描画し終わったあとに
特定の処理を実装したいのですが、
どのコンポーネントに処理を書けばよいでしょうか
<html> <head> <script src="https://code.jquery.com/jquery-2.1.4.min.js"></script> <script src="https://fb.me/react-0.13.3.js"></script> <script src="https://fb.me/JSXTransformer-0.13.3.js"></script> </head> <body> <div id="content"> </div> <script type="text/jsx"> var Message = React.createClass({ render: function() { return ( <li> <div className="message"> <img src={this.props.data.message} alt=""></img> </div> </li> ); } }); var MessageList = React.createClass({ render: function() { var resultNodes = this.props.data.map(function (row) { return ( <Message data={row} /> ); }); return ( <ul> {resultNodes} </ul> ); } }); var MessageBox = React.createClass({ // 初期値を設定します getInitialState: function() { return {data: [], page: 1, apiUrl: 'http://api.com/get'}; }, componentDidMount: function() { // ajaxでデータを取得 this.requestData(); }, render: function() { return ( <div className="messageBox"> <MessageList data={this.state.data} /> </div> ); } }); React.render( <MessageBox />, document.getElementById('content') ); </script> </body> </html>
回答2件
あなたの回答
tips
プレビュー