汇总易懂的React入门教程【基础篇】#02
首先
通过总结YouTube频道【とらゼミ】的工程师学习课程《新・日本一わかりやすいReact入門【基礎編】》,我希望能够复习并加深对React的理解。
上一次的内容:React的基本知识
02 JSX的语法
在这里,我们会解释React框架中用于表示概念“组件”的语法“JSX”。
前回的复习:
组件 = UI(界面)+ 功能(播放、停止视频等等)
JSX是一种JavaScript的语法扩展。
以下列举了一些例子,以解释其记法是什么样的。
const BlueButton = () => {
return (
<button className={'btn-blue'}>
Click me!
</button>
);
}
JSX(JavaScript XML)是一种用于在JavaScript中编写HTML结构的语法。
JSXはjavascriptの拡張言語
HTMLライクな記述 + javascriptの構文が使える
ちなみにReact公式ページにはこう書かれている
const element =
Hello, world!
;
これは JSX と呼ばれる JavaScript の構文の拡張です
最終的にReact要素を生成する
生成React要素
在React中,有一个叫做组件(component)的概念,虽然也可以翻译为元素。
所以,最初我认为生成React元素就是生成React组件。
然而,当查看React的官方网页时,会有这样的描述。
组件类似于JavaScript函数。它接收任意输入(称为“props”),并返回描述应该在屏幕上显示的React元素。
并且列举了一些组件的例子。
function Welcome(props) {
return <h1>Hello, {props.name}</h1>;
}
这个是JSX语法示例中提供的代码结构和组成部分相同。换句话说,变量”BlueButton”是一个组件。
const BlueButton = () => {
return (
<button className={'btn-blue'}>
Click me!
</button>
);
}
在JSX的说明中,它说“生成React元素”,但准确的说应该是“组件生成React元素”。
最终来说,React元素是指官方网页上的定义。
(Chinese) 元素指的是React应用程序中的最小构成块,描述了您希望在屏幕上看到的内容。
React要素指的是React元素,而不是React组件。还列举了例子。
const element = <h1>Hello, world</h1>;
总结来说,关系就是这样的感觉。
React App
|
-----------------
| |
React要素 React要素
↑(生成) ↑(生成)
コンポーネント コンポーネント
为什么要使用JSX?
只需明白「可以像编写HTML一样简便」就行。
如果不使用
React.createElement(
'button',
{className: 'btn-blue'},
'Click me!'
)
使用过的情况
<button className={'btn-blue'}>
Click me!
</button>
JSX是做什么的?
在编译时,使用JSX语法的表达式将被转换为不使用JSX语法的表达式。
人类的工作是以容易理解的方式编写代码,使之对机器也易于理解。
JSX的基本语法和JSX的特殊语法
import React from 'react';
const BlueButton = () => {
const yourMessage = "Click me!";
return (
<button className={'btn-blue'}>
{yourMessage}
</button>
);
}
export default BlueButton;
请注意以下事项:
-
- Reactをimportすること
でなければ使えない
変数を埋め込む場合は{}で囲む
囲まなければyourMessageとそのまま表示されることになる
HTMLの場合と違い、cssを記述する場合はclass=…ではなくclassName=…の形式
HTMLの場合と違い、変数はcamelCaseで
HTMLの場合と違い、imgタグのようなタグでも閉じタグが必要
请参考以下资料
整理一下React组件相关的术语。