React はコンポーネントをステート マシンとして扱います。ユーザーと対話することにより、さまざまな狀態(tài)が実現(xiàn)され、ユーザー インターフェイスとデータの一貫性を保つために UI がレンダリングされます。
反応?duì)顟B(tài)(狀態(tài)) 構(gòu)文
React では、コンポーネントの狀態(tài)を更新し、(DOM を操作せずに) 新しい狀態(tài)に基づいてユーザー インターフェイスを再レンダリングするだけで済みます。
次の例では、LikeButton コンポーネントが作成されます。getInitialState メソッドは、オブジェクトである初期狀態(tài)を定義するために使用されます。このオブジェクトは、this.state プロパティを通じて読み取ることができます。ユーザーがコンポーネントをクリックして狀態(tài)を変更すると、 this.setState メソッドによって狀態(tài)値が変更され、変更のたびに this.render メソッドが自動(dòng)的に呼び出され、コンポーネントが再度レンダリングされます。
反応?duì)顟B(tài)(狀態(tài)) 例
<!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title>php.cn React 實(shí)例</title> <script src="https://cdn.bootcss.com/react/15.4.2/react.min.js"></script> <script src="https://cdn.bootcss.com/react/15.4.2/react-dom.min.js"></script> <script src="https://cdn.bootcss.com/babel-standalone/6.22.1/babel.min.js"></script> </head> <body> <div id="example"></div> <script type="text/babel"> var LikeButton = React.createClass({ getInitialState: function() { return {liked: false}; }, handleClick: function(event) { this.setState({liked: !this.state.liked}); }, render: function() { var text = this.state.liked ? '喜歡' : '不喜歡'; return ( <p onClick={this.handleClick}> 你<b>{text}</b>我。點(diǎn)我切換狀態(tài)。 </p> ); } }); ReactDOM.render( <LikeButton />, document.getElementById('example') ); </script> </body> </html>
インスタンスの実行 ?
[インスタンスの実行] ボタンをクリックしてオンライン インスタンスを表示します