React


なぜ反応を書くのですか?


1.ReactはコンポーネントベースUIライブラリ


ナビゲーションやプッシュなどの重複要素を各ページにそれぞれ符号化する場合は、変更が発生した場合にページ全体を変更する必要があります.
(重複コードの作成->複数ページのコードを一度に変更し、Shotgun Surgeryの「散弾銃手術」とも呼ばれる)

重複コードのコンポーネント化:複数回作業するコンテンツを1つのコンポーネントに印刷すると、コンテンツが減少します。


重複する要素を独立したコンポーネント(ファイルまたはモジュール)として作成し、必要に応じてインポートします.

2.宣言式プログラミング


JavaScript:コマンドプログラミング(実行するコードをリストし、最後に目的を示す)
<h2 id='result'>0</h2>
<button onclick='plus()'>Plus</button>
function plus() {
	const result = document.getElementById('result');
  	const num = parseInt(result.innerText, 10);
  	result.innerHTML = num + 1
}
// 버튼을 클릭하면 plus()가 실행된다
// result를 표시해 줄 요소를 가져온다
// 가져온 결과값을 10진수의 숫자로 변환하여 num에 담는다
// result에 num + 1해준 값을 넣어준다
反応:宣言プログラミング(簡潔)
応答はjsx構文(javascript+XML)を使用します.
function App() {
  const [num, setNum] = useState(0);
  return (
    <div className="App">
      <h2>{num}</h2>
      <button onClick={() => setNum(num + 1)}>Plus</button>
    </div>
  );
}
/// plus를 누르면 num값에 +1을 한다

3. VirtualDOM


DOM:ブラウザが実際に使用するオブジェクト(Document Object Model)


ブラウザレンダーパス


=> HTMLを解釈し、表示される順序をツリー状に構造化して行います.
=>ページ内で更新が必要な場合は、上記の手順を繰り返します.
=>最終、頻繁に更新=パフォーマンス低下

反応器の仮想DOMは?

  • 仮想ドームを使用して、DOMを頻繁に更新する単一ページアプリケーションのリフレッシュとリフレッシュを最小限に抑えることで、パフォーマンスを最適化します.
  • 仮想DOMを使用して、要素を追加するときに仮想DOMを使用して更新します.仮想DOMを使用して更新するのではなく、完了したときに実際に表示されているDOMを一度に更新します.
    (state Change -> Conpute Diff -> Re-render)
  • より詳細に反応し、より多くの特徴は講師のブログを参考にしてください!
    @winterlood 공부하며 정리&기록하는 ._. 씅로그