React - JSX
17124 ワード
反応の基礎概念
まず、React公式ページの一番上のJSXについて知りましょう.
Javascriptの拡張構文 したがってブラウザはJSXを直接読み取ることができず、コンパイルが必要である. compileは、reactエイリアスを生成するJavaScriptオブジェクトの式です. では、JSXが実際にどのように使われているかをコードで見てみましょう.
HTMLタグが提供する属性は同じです. を重ねることはできますが、1行を超えると括弧で囲みます.さらに、すべてのJSX を囲むために最も外側のJSXが必要です.clostingtagは存在する必要があります. HTMLはイベントアプリケーションと同様、onClickなどのパッケージではなくonClickを使用します if,for文のJavaScriptでの式は文であるため,
実はreactの勉強を始めたばかりの頃はJSXが式だったのですが、
したがって,式をより正確に理解した.
JavaScriptには、式と文の2つの概念があります.式記述生成値のコード 文は、動作を制御するコードを記述する. 簡単な例で区別しましょう.const x=10検索式と文;contx=は文で、10です.この式には追加の学習が必要です.
実はJSXを使う必要はありません.Reactライブラリの
Reactがパフォーマンス向上に大きな役割を果たしている仮想DOMとDOMについて知りたい.
まず、React公式ページの一番上のJSXについて知りましょう.
JSXって何?
const h1 = <h1>Hello World<h1>;
その後、上記のコードをコンパイルすると、htmlドキュメントで使用されている<h1>Hello World!</h1>
と同じ結果が得られます.JSXを利用する際に知りたいこと
const h1 = <h1 id="header-1">Hello World</h1>;
// 단, class는 className을 사용한다
// JS에도 Class의 개념이 있기 때문에
const div = <div className="div-1">Hello World</div>;
const header = (
<div>
<h1>Header</h1>
</div>
);
// 에러 발생
const divs = (
<div></div>
<div></div>
)
// HTML의 경우 <br> 도 <br/>과 같은 결과를 내놓지만 JSX는 아니다
const img = <img />;
const br = <br />;
{}
|JavaScript式を適用できます. const name = 'John';
const title = <h1>{name}</h1>
// 또한 속성에도 적용이 가능하다.
const url = './image.png';
const img = <img src={url} />;
function handleClick () {
return true;
}
const div = <div onClick={handleClick}>div</div>;
{}
でも使用できない.同じ結果式を使用します. // if문 대신 사용하는 방법
const flag = true;
let msg;
// 1. JSX밖에서 사용한다
if(flag) {
msg = <h1>it's true</h1>;
} else {
msg = <h1>it's false</h1>;
}
// 2. 3항 연산자를 사용한다.
const h1 = (
<h1>
{ flag ? "it's true" : "it's false" }
</h1>
);
// 3. && 연산자를 사용한다.
const showHeader;
const header = (
<div>
// showHeader가 true라면 <h1>show me</h1>가 render되지만
//false라면 안된다.
{showHeader && <h1>show me</h1>}
</div>
);
// 3번은 1, 2번과 다르게 render가 될지 안될지를 결정할 때
// 사용한다.
// for 대신 사용이 가능한 방법
// array.map을 이용한다
const list = [1, 2, 3, 4];
const liList = list.map((val) => {
return <li>{val}</li>;
});
const lis = (
<ul>
{liList}
</ul>
);
実はreactの勉強を始めたばかりの頃はJSXが式だったのですが、
{}
ではif文とfor文がJavaScriptの式ではないことに気づかなかったので使えなかったのですが、「そうでしょう」だと思います.したがって,式をより正確に理解した.
式と文
JavaScriptには、式と文の2つの概念があります.
// expression
const x = 10;
const y = getNum(some_number);
// statement
if () {
// some code
} else {
// some code
}
while () {
// some code
}
for () {
// some code
}
// if, while, for문을 통해서 값을 만들어 낼 순 있지만 그 결과값을 반환하진 않는다.
React.createElement()
実はJSXを使う必要はありません.Reactライブラリの
createElement()
メソッドを使用すると、同様の効果が得られます.const el = React.createElement(
"h1",
{className: 'hello'},
"Hello, World!!"
);
const h1 = <h1 className="hello">Hello, World!!</h1>;
// 실제로 해보면 진짜로 같은 결과가 나온다.
しかし、JSXを使用すると、UIがどのように構成されているかが容易に判断され、使用しない理由はありません.次の授業は?
Reactがパフォーマンス向上に大きな役割を果たしている仮想DOMとDOMについて知りたい.
Reference
この問題について(React - JSX), 我々は、より多くの情報をここで見つけました https://velog.io/@cush_wa/React1-JSXテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol