React使用笔记1-React的JSX和Style

Date: 2015-11-27 20:56

Category: Web

Tags: JavaScript

Author: 刘理想

1. 文件基本结构

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title></title>
<link rel="stylesheet" href="">
<!--react.js-->
<script src="js/react.js"></script>
<!--解析JSX-->
<script src="js/JSXTransformer.js"></script>
</head>
<body>
<div id="container"></div> <!--JSX的声明需要是type="text/jsx"-->
<script type="text/jsx">
var Hello = React.createClass({
render: function(){
return <div>Hello, {this.props.name}</div>;
}
});
React.render(<Hello name="world"/>,
document.getElementById('container'));
</script>
</body>
</html>

注意:JSX的type是text/jsx.

2. 添加样式

2.1 使用外部CSS样式

注意,在JSX中不能直接给components添加class,因为class在ES6中是关键字,并且在ES6之前也是保留字,使用className来代替。

<script type="text/jsx">
var Hello = React.createClass({
render: function(){
return <div className="alert-text">Hello, {this.props.name}</div>;
}
});
React.render(<Hello name="world"/>,
document.getElementById('container'));
</script>

2.2 使用内联CSS样式

JSX中内联样式需要使用字典来表示,并且使用驼峰命名法代替原有的font-size等格式的样式,比如fontSize来代替font-size等。

注意,如果样式出现错误,可以通过控制台来查看错误。

<script type="text/jsx">
var Hello = React.createClass({
render: function(){
return <div style={{color:'red'}}>Hello, {this.props.name}</div>;
}
});
React.render(<Hello name="world"/>,
document.getElementById('container'));
</script>

style={{color:'red'}}中有两个括号,可能会让人看着发晕,其实它与下面是等价的

var styleObj = {color: 'red'};
style={styleObj}

作者:liulixiang1988#gmail.com (#换成@)

参考链接:http://www.imooc.com/learn/504

React使用笔记1-React的JSX和Style的更多相关文章

  1. React学习笔记-2-什么是jsx?如何使用jsx?

    什么是jsx?    JSX是JavaScript  XML 这两个单词的缩写,xml和html非常类似,简单来说可以把它理解成使用各种各样的标签,大家可以自行 百度.所以jsx就是在javascri ...

  2. React使用笔记(3)-React Event Listener

    Date: 2015-11-28 12:18 Category: Web Tags: JavaScript Author: 刘理想 [toc] 1. 构造基本结构 首先,我们先创建一个按钮,一个输入框 ...

  3. 【React学习笔记】React生命周期梳理(16.X前后两种)

    React生命周期 「16版本以前的:」 生命周期流程图 组件从生成到被挂在到页面上的一系列过程 根据流程图打印的执行顺序图: 流程讲解: 初始化流程 start 开始创建组件 在这个周期中做的事情 ...

  4. React学习笔记 - JSX简介

    React Learn Note 2 React学习笔记(二) 标签(空格分隔): React JavaScript 一.JSX简介 像const element = <h1>Hello ...

  5. react学习笔记1--基础知识

    什么是react A JAVASCRIPT LIBRARY FOR BUILDING USER INTERFACES[React是一个用于构建用户界面的JavaScript库.] React之所以快, ...

  6. React学习笔记 - 组件&Props

    React Learn Note 4 React学习笔记(四) 标签(空格分隔): React JavaScript 三.组件&Props 组件可以将UI切分成一些独立的.可复用的部件,这样你 ...

  7. React学习笔记 - 元素渲染

    React Learn Note 3 React学习笔记(三) 标签(空格分隔): React JavaScript 二.元素渲染 元素是构成react应用的最小单位. 元素是普通的对象. 元素是构成 ...

  8. React学习笔记 - Hello World

    React Learn Note 1 React学习笔记(一) 标签(空格分隔): React JavaScript 前.Hello World 1. 创建单页面应用 使用Create React A ...

  9. 前端笔记之React(一)初识React&组件&JSX语法

    一.React项目起步配置 官网:https://reactjs.org/ 文档:https://reactjs.org/docs/hello-world.html 中文:http://react.c ...

随机推荐

  1. android样式跟主题

    简单说类似与自定义控件,只不过自定义控件针对的是view 而样式与主题针对的是属性.元素 在TexvView中引入样式 layout.xml <?xml version="1.0&qu ...

  2. Android ROM 制作教程

    本文来自: 起点手机论坛 具体文章參考:http://www.qdppc.com/forum.php?mod=viewthread&tid=43751&fromuid=1 1.Andr ...

  3. CodeForces Round #179 (295A) - Greg and Array 一个线段树做两次用

    线段树的区间更新与区间求和...一颗这样的线段树用两次... 先扫描1~k...用线段树统计出每个操作执行的次数... 那么每个操作就变成了 op. l  , op.r , op.c= times* ...

  4. 一个可无限伸缩且无ABA问题的无锁队列

    关于无锁队列,详细的介绍请参考陈硕先生的<无锁队列的实现>一文.然进一步,如何实现一个不限node数目即能够无限伸缩的无锁队列,即是本文的要旨. 无锁队列有两种实现形式,分别是数组与链表. ...

  5. 更改DataTable列名方法

    1.通过DataAdapter将查询的结果填充到DataSet的表(DataTable)中: 如:dataAdapter.Fill(dataSet),这时dataSet的表名默认为Table 如果使用 ...

  6. dedecms导入编辑器

    <?php GetEditor("info","",450,"Diy"); ?>

  7. 第一个输出程序 Console.WriteLine

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  8. google base库之simplethread

    // This is the base SimpleThread. You can derive from it and implement the // virtual Run method, or ...

  9. TOJ 1702.A Knight's Journey

    2015-06-05 问题简述: 有一个 p*q 的棋盘,一个骑士(就是中国象棋里的马)想要走完所有的格子,棋盘横向是 A...Z(其中A开始 p 个),纵向是 1...q. 原题链接:http:// ...

  10. VC++学习之VC中常见问题

    VC++学习之VC中常见问题 (1)为什么某个类突然在工作区间里面突然看不见了? 只是类隐藏了,打开FILEVIEW,找到隐藏类的头文件,随便敲一下键盘的空格键,类就会在CLASSVIEW中显示了 ( ...