React jsx 语法解析 & 转换原理】的更多相关文章

原文:http://my.oschina.net/leogao0816/blog/379487 什么是JSX? 在用React写组件的时候,通常会用到JSX语法,粗看上去,像是在Javascript代码里直接写起了XML标签,实质上这只是一个语法糖,每一个XML标签都会被JSX转换工具转换成纯Javascript代码,当然你想直接使用纯Javascript代码写也是可以的,只是利用JSX,组件的结构和组件之间的关系看上去更加清晰. var MyComponent = React.createCl…
什么是JSX         JSX 是一种类 XML 语言,全称是 JavaScript XML .React 可以不使用 JSX来编写组件,但是使用JSX可以让代码可读性更高.语义更清晰.对 React 元素进行抽象等等.         JSX不是XML或者HTML,不是一种限制,是基于ECMAScript的一种新特性,一种定义带属性树结构的语法.JSX是JS的一中语法糖,类似CoffeeScript.TypeScript最终都是被解释为JS.语法糖必须要有解析器解析,浏览器才可以识别.解…
JSX------HTML tags vs React Components: 1.To render a html tag,just use lower-case tag names in JSX; var myDivElement = <div className="foo" />; React.render(myDivElement, document.body); 2.To render a React Component,just create a local v…
视频学习地址: http://www.jtthink.com/course/play/575 官方地址 https://facebook.github.io/react/ 神坑: 1.每次this.setState都会重新初始化getInitialState中的参数 2.createClass的命名必须以大写开头如,var MySelect = React.createClass,这里如果定义为myselect就会出错 3.render方法的第一个参数return,html代码的第一行必须和re…
1.React honws how to bubble and capture events according to the spec,and events passed to your event handler are guaraneed to be condidtent with the W3C spec,regardless of which brower you're using. if you'd like to use React a couch device such as a…
注意:For DOM differences,such as the inline style attribute,check here. // bad: it displays "FIrst · second" <div>{'First · Second'}</div> There are various ways to work-around this issue.The easiest one is to write unicode cahracter d…
1. if you know all the propertities that you want to place on a component ahead of time,it is easy to use JSX: var component = <Component foo={x} bar={y}/> 2. This is an anti-pattern (反面实例---错误的) because it means that we can't help you check the rig…
React JSX语法 JSX只是一个语法糖,每一个XML标签都会被JSX转换工具转换成纯Javascript代码,当然你想直接使用纯Javascript代码写也是可以的,只是利用JSX,组件的结构和组件之间的关系看上去更加清晰. 例如: var Nav = React.createClass({/*...*/}); var app = <Nav color="blue"><Profile>click</Profile></Nav>; 会…
大家在参考本节时,请先阅读以下博文,进行预热: http://blog.csdn.net/tyler_download/article/details/50708807 本节代码下载地址: http://pan.baidu.com/s/1sjWiwPn 代码的理解和运行是吃透编译原理的关键,如果我们看的是爱情动作片,自然选择无码的好,但如果看得是计算机课程,则必须有码,无码的计算机理论都是耍流氓. 当前,java所实现的简易编译器目的是将一条或一组含有加号和乘号的算术表达式编译成类似汇编语言的伪…
****关键字 | setState | JSX语法转换 | 组件更新机制 组件更新机制 setState() 的两个作用 修改state 更新组件 过程:父组件重新渲染时,也会重新渲染子组件,但只会渲染当前组件子树(当前组件以其所有子组件) 组件性能优化 减轻state 减轻state:只存储跟组件渲染相关的数据(比如:count/ 列表数据 /loading等) 注意:不用做渲染的数据不要放在state中 对于这种需要在多个方法中用到的数据,应该放到this中 避免不必要的重新渲染 组件更新…