Menu
CoddyTech

JSX 不是 HTML

本课属于 Coddy React 学习旅程的“基础知识”单元。第 4 课,共 42 课。

JSX 看起来像 HTML,但它写在 JavaScript 中,因此有一些你会经常遇到的小差异:

1. 用 className 代替 class。 class 是 JavaScript 中的保留字,因此 JSX 会重命名这个属性:

<p className="warning">Careful!</p>

2. 每个标签都必须闭合。 HTML 允许 <br> 和 <input> 不闭合,JSX 则不允许。自闭合标签以 /> 结尾:

<input id="name" />
<br />

3. camelCase 属性。 多个单词组成的属性要改为 camelCase:onclick → onClick,tabindex → tabIndex。学到事件时,你会经常用到 onClick。

challenge icon

挑战

入门

下面的段落需要用 JSX 的方式添加一个 CSS 类。

  1. 给段落添加 CSS 类 notice(记住:JSX 不使用 class 这个属性名)。
  2. 保持它的 id 和文本不变。

亲手试试

<!DOCTYPE html>
<html>
    <head>
        <link rel="stylesheet" href="styles.css" />
    </head>
    <body>
        <div id="root"></div>
        <script type="module" src="main.jsx"></script>
    </body>
</html>
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

基础知识中的所有课