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は?
(state Change -> Conpute Diff -> Re-render)
@winterlood
공부하며 정리&기록하는 ._. 씅로그
Reference
この問題について(React), 我々は、より多くの情報をここで見つけました https://velog.io/@sseung-i/Reactテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol