jsx

JSX 执行更快,因为它在编译为 JavaScript 代码后进行了优化。 它是类型安全的,在编译过程中就能发现错误。

  1. React JSX 代码可以放在一个独立文件

    <script type="text/babel" src="_react.js"></script>
    
    _react.js:
    ReactDOM.render(
      <h1>Hello, world!</h1>,
      document.getElementById(‘example‘)
    );
  2. JSX 允许在模板中插入数组,数组会自动展开所有成员

    var arr = [
      <h1>标题</h1>,
      <h2>副标题</h2>,
    ];
    ReactDOM.render(
      <div>{arr}</div>,//代码中嵌套多个 HTML 标签,需要使用一个标签元素包裹它
      document.getElementById(‘example‘)
    );
  3. 添加自定义属性需要使用 data- 前缀,由于 JSX 就是 JavaScript,一些标识符像 class 和 for 不建议作为 XML 属性名。React DOM 使用 className 和 htmlFor 来做对应的属性。
  4. React 推荐使用内联样式。我们可以使用 camelCase 语法来设置内联样式. React 会在指定元素数字后自动添加 px

    var myStyle = {
        fontSize: 100,
        color: ‘#FF0000‘
    };
    ReactDOM.render(
        <h1 style = {myStyle}>菜鸟教程</h1>,
        document.getElementById(‘example‘)
    );
  5. 表达式写在花括号 {} 中
  6. 在 JSX 中不能使用 if else 语句,但可以使用 conditional (三元运算) 表达式来替代
  7. 注释需要写在花括号中{/*注释...*/}.在标签内部的注释需要花括号在标签外的的注释不能使用花括号

    ReactDOM.render(
        /*注释 */
        <h1>{/*注释*/}</h1>,
        document.getElementById(‘example‘)
    );
  8. 要渲染 React 组件,只需创建一个大写字母开头的本地变量。

    var MyComponent = React.createClass({/*...*/});
    var myElement = <MyComponent someProperty={true} />;
    ReactDOM.render(myElement, document.getElementById(‘example‘));
时间: 2024-12-22 11:47:10

jsx的相关文章

JSX架构及注释

一.架构 二.注释 1 <!DOCTYPE html> 2 <html lang="zh-cn"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Hello, World</title> 6 </head> 7 <body> 8 <script src="./react-0.13.2/react-0.13.2/bui

如何使用react-tools将jsx编译成JavaScript

1,通过npm安装react-tools npm –g react-tools 2,通过cmd进入项目根目录执行watch命令 jsx --watch src/ build/ src路径下存放的是jsx文件,编译后的js存放到build路径下 编译前: 编译后: 3,当目标文件变化以后,自动构建生成新的js文件.

React的设计思想——理解JSX和Component

基于HTML的前端界面开发正变得越来越复杂,其本质问题基本都可以归结于如何将来自于服务器端或者用户输入的动态数据高效的反映到复杂的用户界面上.而来自Facebook的React框架正是完全面向此问题的一个解决方案.React带来了很多开创性的思路来构建前端界面,虽然选择React的最重要原因之一是性能,但是相关技术背后的设计思想更值得我们去思考. React项目经理Tom Occhino曾经阐述React诞生的初衷,他提到React最大的价值究竟是什么?是高性能虚拟DOM.服务器端Render.

React JSX语法说明

什么是JSX? 在用React写组件的时候,通常会用到JSX语法,粗看上去,像是在Javascript代码里直接写起了XML标签,实质上这只是一个语法糖,每一个XML标签都会被JSX转换工具转换成纯Javascript代码,当然你想直接使用纯Javascript代码写也是可以的,只是利用JSX,组件的结构和组件之间的关系看上去更加清晰. var MyComponent = React.createClass({/*...*/}); var myElement = <MyComponent som

【go】脑补框架 Express beego tornado Flux reFlux React jsx jpg-ios出品

http://goexpresstravel.com/ 今天 Express 的作者 TJ Holowaychuk 发了一篇文章,正式宣告和 Node.js 拜拜了,转向 Go 语言. Go verses Node 如果你在做分布式工作,你会发现 Go 语言丰富的并发原语非常有帮助.虽然我们用 Node 的 generator 也可以做类似的事,但在我看来,generator 永远只能做一半.没有独立的栈错误处理和报告,充其量是中等.我也不想再等(Node)社区花3 年去整理(改善),尤其是我们

&lt;React Native移动开发实战&gt;-1-React Native的JSX解决方案

JSX并不是一门新的开发语言,而是Facebook提出的语法方案:一种可以在JavaScript代码中直接书写HTML标签的语法糖,所以,JSX本质上还是JavaScript语言. 小知识:语法糖(Syntactic sugar)是由英国计算科学家彼得·兰丁(https://zh.wikipedia.org/ wiki/%E5%BD%BC%E5%BE%97%C2%B7%E5%85%B0%E4%B8%81)发明的一个术语,指计算机语言中添加的某种语法,这种语法对语言的功能并没有影响,但是更方便程序

React的JSX语法及组件

最近一个同事很急没有做任何交接就请了陪产假,然后我来维护.说实在的我一开始是一脸懵逼的.因为MV*项目里用的最多的还是Vue:React听说也了解过,但毕竟不熟... 不过不管如何这也是工作:同事也恭喜同事当爸了,打心理为他感到高兴! 代码down下来后开始查看的时候语法基本上使用的都是CMD,ES6还有本文讲的JSX,React组件.CMD,ES6这不难毕竟平常也经常用.但是JSX,React组件一开始就有点懵逼, 不过多看几遍加百度Google就懂了. (好像废话有点多,好了,开始讲重点..

初学React:JSX语法

这是本人初学React做的学习笔记;讲的不是很深,只算是简单的进行介绍. 这是一个小系列.都是在同一个模板中搭建的,但是代码是不能正常执行的. >>第一个组件.js 'use strick' /*===========================JavaScript的XML语法========================*/ var CommentBox = React.createClass({ render:function () { return ( <div classN

React之JSX学习教程

在学习React的过程中,我们总想让搭建 React 应用更加简单,那么我们就该学会使用JSX. 什么是JSX? JSX 是一个看起来很像 XML 的 JavaScript语法扩展.React 可以用来做简单的 JSX 句法转换. 下面看一段React组件的代码: //  未使用JSX React.render( React.createElement('ul', { className: 'list' }, React.createElement('li', null, 'fist li'),