JSX 是一个看起来很像 XML 的 JavaScript 语法扩展
React 使用 JSX 来替代常规的 JavaScript。
在react中.js后缀与.jsx没有区别,react中使用的模板语言是jsx,但模板语言的本质仍然是js代码
在React的组件中,只有引入了React的模块才能正确识别JSX
代码,因为不是合法的js语法,不借助‘外力’是不能够呗浏览器识别的
import React from 'react';
在jsx中标签的class属性由className代替
<div className="index">Hello world.</div>
在jsx中处理逻辑代码要放在{}中
数组在jsx中会被自动展开
为什么要使用虚拟DOM
DOM操作是一件成本很高的事情
DOM操作都伴随着大量的计算,也正因为这样,当页面需要的操作不断变得复杂,每一次操作需要改动的元素变得更多时,浏览器的压力也会越来越大。.
正常情况下,我们操作是直接改动html元素。每一次操作都会给浏览器增加更多的压力。而虚拟DOM可以帮我们收集短时间来的多次改动,汇总成为一次改动。这样对于浏览器来说,压力就减少了很多。如图。