言ってまず最初はそれがフックに反応使用して、フックが機能している反応して、それが関数を呼び出しますが、異なるフック(機能)のみ異なる機能を持つことです。第二には、フックが唯一のアセンブリ機能で使用することができます反応し、関数は、コンポーネントの機能、機能がどのような役割ではありますか?それが呼び出されて実行されます。コンポーネントのレンダリング関数を呼び出す場合、コンポーネント関数内のコードの各行は、1つのフックずつの実装が続く実行される反応。
機能コンポーネントは状態の状態を保持する変数、および参照変数を宣言できるようにuseState()呼び出しは、コンポーネントの状態のアレイは、アレイ内の最初の項目であり、第2項は状態更新の関数であり、戻り状態の変化のセーブ機能、状態は、これまでの機能コンポーネントを有するとともに、ステータスを更新することができます。もちろん、useState()は、状態変数を初期化するために使用されるパラメータを受け入れ、このパラメータは、任意のタイプ、基本型オブジェクト関数であってもよいです。あなたは理解するのに役立ちます、状態変数と更新機能を取得する配列インデックスの方法を使用することができます
機能アプリ(){ 状態せ = useState('')[ 0 ]; SETSTATEせ(= useState '')[ 1 ]。 }
より簡潔な構文は、状態変数と更新機能のため解体の配列が、意味のある名前を使用することです
CONSTアプリ=()=> { CONST [メッセージ、setMessage] = useState('' )。 }
あなたは機能部品に他の変数と同じように使用できる変数を宣言した後、より具体的には、返さJSX機能で使用されています。入力入力ボックスを書きます
CONSTアプリ=()=> { CONST [メッセージ、setMessage] = useState('' )。 関数handleClick(E){ setMessage(e.target.value) } リターン( <入力値= {メッセージ}のonChange = {handleClick}> </ INPUT> ) }
ときに最初レンダリングコンポーネント、最初のコールuseState()、この時間はuseState()戻り「」、我々が通過するように、その初期値は「」、及び、メッセージに割り当て、この時間は、メッセージが「」であり、変更イベントの結合しながら機能handleClickを宣言し、そして最終的にそれがメッセージを使用していますJSX、割り当てられた値に戻り、この時点での値の値は、またに「」です。レンダリングは、入力ページの入力ボックスが空であるが示され、完了です。今onChangeイベントをトリガ、値を入力し、それはそれが反応の更新メカニズムをトリガー、setMessageを呼び出します。もちろん、SETSTATEすぐにそれが更新キューを置く、この値を更新し、同じクラスの構成要素ではないリアクトレンダリングは非同期で反応します。ときに再レンダリングリアルタイム、リアクト再び呼び出し、アプリケーションの機能コンポーネントをレンダリングする、またはuseStateを(コールする)、そしてuseStateは初期値を返しますが、更新setMessageでトリガー値はありません。あなたはsetMessageを呼び出すときに、我々は反応するように同等のパラメータを渡すので、ステータス更新以内に完了反応します。UseState値は、メッセージに割り当てられ、あなたが入力ボックスに入力した値である。次にダウンを実行、または関数を作成し、その後、JSXでは、JSXメッセージが入力した値であり、その後、割り当てられて返さ値に、レンダリングは、あなたが入力した値を持つページ上の入力完了です。