这一节内容主要以了解为主。

渐渐的体会react的语法和其特性。

① htmlAndJs 混合编写

react和以往的前后台书写方式不一样。

在之前的多个语言中,讲求的是将页面代码和js代码逻辑分开,包括原来的css文件都有独立的分装。

而react的提供了一种html和js语句混合编写的方式。这就是jsx。

先不详说,体会一下先:

 var arr = [
<h1>Hello world!</h1>,
<h2>React is awesome</h2> ];
//将html装到数组里面
ReactDOM.render( <div>{arr}</div>, document.getElementById('app'));

② props和省略号语法

props对象的属性与组件的属性一一对应.

'use strict';
import React,{Component} from 'react';
import ReactDOM from 'react-dom';
//声明一个组件类,叫MyTitle
class MyTitle extends Component{
show(){
console.log(this.props.title);
console.log(this.props.contents);
console.log(this.props.name);
}
//渲染组件:一个按钮,并可以点击。
//注意bind(this)的写法,这是jsx语法要求的
//如果嫌麻烦也可以使用箭头函数。
render(){
return (<button onClick={ this.show.bind(this) }> click </button>);
}
}
//要向组件传递的数据
var data = {title:'this is a title',contents:'this is contents'};
ReactDOM.render(
<MyTitle {...data} name={'my name'}/>,
document.getElementById('app')
);

  上述代码实际上渲染出来的是一个button。

详细的说明看我的注释就好了。

③ this.props.children

在这个属性中获取传入的dom的节点信息。

可以用 React.Children.map方法遍历。

'use strict';
import React,{Component} from 'react';
import ReactDOM from 'react-dom';
class NodeList extends Component{
render(){
return(
<ul>
{
//遍历this.props.children节点
React.Children.map(this.props.children,function(child){
return (<li>{child}</li>);
})
}
</ul>
);
}
} ReactDOM.render(
<NodeList>
<span>hello</span>
<span>world</span>
</NodeList>,
document.getElementById('app')
);

  

参考:https://github.com/ZhangWeiStudy/React

源代码说明:点此下载

  

React笔记_(2)_react语法1的更多相关文章

  1. React笔记_(3)_react语法2

    React笔记_(3)_react语法2 state和refs props就是在render渲染时,向组件内传递的变量,这个传递是单向的,只能继承下来读取. 如何进行双向传递呢? state (状态机 ...

  2. React笔记_(6)_react语法5

    react的版本 目前主要的react有 ES5,ES6.也有ES5和ES6混合编写的.比较混乱. react官方提倡用ES6. 说到这里,就需要提到一个概念--mixin mixin在es6中被摒弃 ...

  3. React笔记_(5)_react语法4

    ajax 数据应用场景 在真实的开发环境中,拿到了产品需求,第一件事不是逼着后台开发人员先完成,然后前端再介入开发,这样太浪费时间. 正确的做法是跟后端人员先商量好接口名称,请求参数,返回的数据格式等 ...

  4. React笔记_(4)_react语法3

    生命周期 很多语言中都讲了关于生命周期.这可是决定生命的周始,有没有存在感的关键啊. 生命周期,有生有死,有始有终,因果轮回,循环往复.(说多了) react中,主要说明的是 一个组件的生命周期.简单 ...

  5. React笔记_(7)_react路由

    路由 路由(routing)是指分组从源到目的地时,决定端到端路径的网络范围的进程. 路由器当然是作为一个转发设备出现的,主要是转发数据包来实现网络互联. 那么react的路由到底指的是什么呢? 举个 ...

  6. React笔记_(1)_react概述

    React概述   React是一种很好的前端技术. 它将应用打散成独立的小模块,然后进行组装,完成开发. react远比angularjs难学的多. react依赖的如webpack等各种工具得先学 ...

  7. 运维开发笔记整理-Django模型语法

    运维开发笔记整理-Django模型语法 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.模型基本概念 1>.什么是模型 模型是你的数据唯一的,权威的信息源.它包含你所存储数 ...

  8. 《DOM Scripting》学习笔记-——第二章 js语法

    <Dom Scripting>学习笔记 第二章 Javascript语法 本章内容: 1.语句. 2.变量和数组. 3.运算符. 4.条件语句和循环语句. 5.函数和对象. 语句(stat ...

  9. 读经典——《CLR via C#》(Jeffrey Richter著) 笔记_发布者策略控制

    在 读经典——<CLR via C#>(Jeffrey Richter著) 笔记_高级管理控制(配置)中,是由程序集的发布者将程序集的一个新版本发送给管理员,后者安装程序集,并手动编辑应用 ...

随机推荐

  1. Linux就这个范儿 第11章 独霸网络的蜘蛛神功

    Linux就这个范儿 第11章  独霸网络的蜘蛛神功  第11章 应用层 (Application):网络服务与最终用户的一个接口.协议有:HTTP FTP TFTP SMTP SNMP DNS表示层 ...

  2. Hibernate三种状态的转换

    hibernate的状态 hibernate的各种保存方式的区(save,persist,update,saveOrUpdte,merge,flush,lock)及 对象的三种状态 hibernate ...

  3. WordPress 性能检测与速度优化

    来源:SayBlog.Me [摘要]在如何提升WordPress性能与速度方面多花一些时间是值得的,本文下面为大家就如何提升WordPress运行效率列出了几点建议以供参考. 你的WordPress博 ...

  4. C# js asp.net 字符串MD5加密GetMD5Hash

    赵小虎老师 using System; using System.Collections.Generic; using System.Linq; using System.Text; using Sy ...

  5. Springfox Reference Documentation

    1. Introduction The Springfox suite of java libraries are all about automating the generation of mac ...

  6. lcd 图片

    硬件平台:mini2440 软件环境:UCOS2 .ADS1.2 . LCD彩色图片转换工具BMP_to_H工具bmp2h LCD彩色图片转换工具BMP_to_H工具文件夹下的使用说明 在S3C241 ...

  7. 设置 BitmapData 没填充部分为透明色

    默认 BitmapData 是以白色填充的 在初始化时,设定上每3,4个参数即可透明: new BitmapData(w,h,true,0) 第4个参数要为0

  8. FOJ 2013 11 月赛

    这套题目还是比较吊的,由于我的沙茶,还是很多没有做出来- -! C:逆序数 D:呵呵 A:妈蛋,自己精度没弄好,想到之前GCC的要加eps,就WA了几次后交Visual C++过了!C(n,m)p^m ...

  9. 转:Python 的 Socket 编程教程

    这是用来快速学习 Python Socket 套接字编程的指南和教程.Python 的 Socket 编程跟 C 语言很像. Python 官方关于 Socket 的函数请看 http://docs. ...

  10. [摘录]quarts:feature

    Features of Quartz Runtime Environments Quartz can run embedded within another free standing applica ...