JSX简介
金蝶云社区-雪獒
雪獒
0人赞赏了该文章 682次浏览 未经作者许可,禁止转载编辑于2017年09月10日 11:48:41

一、JSX简介
JSX 是 JavaScript 语法的扩展,是 Facebook 团队提出的一个语法方案,可以在 JavaScript 的代码直接中使用 HTML 标签来编写 JavaScript 对象,这种语法方案需要通过 JSXTransformer 来进行编译转换成真实可用的 JavaScript 代码。
React 是基于组件的开发思想,React 认为一个组件可以是一个完全独立的没有任何其他依赖的模块文件。一个组件中可以有自己的样式(Inline Style)和结构(JSX编写的HTML)。

二、语法规则
允许 HTML 与 JavaScript 的混写:HTML 语言直接写在 JavaScript 语言之中,不加任何引号,遇到 HTML 标签(以 < 开头),就用 HTML 规则解析;遇到代码块(以 { 开头),就用 JavaScript 规则解析。
使用JSX来创建一个HTML标签,首字母小写:
var link = Hello World!
使用JSX来创建一个React组件:
var HelloWorld =
备注:
React 的 JSX 里约定分别使用首字母大、小写来区分React组件和 HTML 标签。
由于JSX 是直接将 HTML 写在 JavaScript 代码中,如果HTML 中的属性是 JavaScript 的关键字,则必须进行转换,转换规则和在 JavaScript 中使用 DOM 的 property 一样。例如 class 和 for 使用 className 和 htmlFor 来代替。
JSX 标签的标签都需要有完整的结束符号,否则编译会报错。

三、基本语法
1、变量
JSX中可以通过 {xxx} 来插入一个JavaScript变量:
var message = 'Hello World!';
{message}
2、根节点
每一段JSX代码都只能有一个根节点,否则编译不通过,尤其是多行语句的时候。
var btnBox = (



Hello World!



);
3、表达式
JSX中支持三元表达式:
var person =
var content = {window.isLoggedIn ?