一、JSX是什么
- 一个语法或者说是语法糖
- 基于
ECMAScript
一种新的特性 - 一种定义带属性(
DOM
节点)树结构(DOM
结构)的语法
JSX不是
- 一门新的语言
XML
或者HTML
- 一种限制,可以不使用
JSX
二、JSX的特点
- 类
XML
语法,易于接受 - 增强
JS
语义,在js
中编辑HTML
- 结构清晰
- 抽象程度高(核心):避免手
动DOM
操作,跨平台 - 代码模块化
三、JSX语法
1 | /* |
四、JSX的注释
- 在
JSX
语法中,添加注释需要写在{ }
中 - 可以使用多行注释与单行注释
1 | var HelloWorld = React.createClass({ |
五、JSX中使用样式
- 内联样式
- 对象样式
- 选择器样式(
CSS
样式)
1 | /* |
六、条件判断的四种写法
- 三元表达式 ? :
- 使用变量,通过函数使用条件判断语句,返回一个字符串
- 直接在
{}
中调用函数 - 使用比较运算符
&&
||
!`
1 | /* |
七、非DOM(元素)属性
dangerouslySetInnerHTML
:在JSX
中直接插入HTML
代码,动态的添加HTML
内容,由用户添加。需要使用属性,__html
ref
:父组件引用子组件this.refs.name
key
:目的提高渲染性能 ,涉及到React diff
算法,React
通过key
值判断是否重新渲染