React JSX

React用JSX来替代常规的JavaScript

JSX有如下优点:

1. JSX执行更快,因为它在编译为JavaScript做了优化

2. 类型安全的,在编译过程中就能发现错误

3. 使用JSX编写模板更加简单快速

const element = <h1>Hello, world!</h1>;

这种看起来可能有些奇怪的标签语法既不是字符串也不是 HTML。它被称为JSX,我们推荐在 React 中使用 JSX 来描述用户界面。

JSX 是在 JavaScript 内部实现的。

注意:

由于 JSX 就是 JavaScript,一些标识符像 class 和 for 不建议作为 XML 属性名。作为替代,React DOM 使用 className 和 htmlFor 来做对应的属性。

var myDivElement = <div className="foo" />;
ReactDOM.render(myDivElement, document.getElementById('example'));

下面将详细介绍一下JSX的各种使用方法:

一、JavaScript 表达式

在 JSX 中使用 JavaScript 表达式。表达式写在花括号 {} 中。

ReactDOM.render(
    <div>
      <h1>{1+1}</h1>
    </div>
    ,
    document.getElementById('example')
);

二、三元运算

在 JSX 中不能使用 if else 语句,但可以使用 conditional (三元运算) 表达式来替代。输出:true

var i = 1;
ReactDOM.render(
    <div>
      <h1>{i == 1 ? 'True' : 'False'}</h1>
    </div>
    ,
    document.getElementById('example')
);

三、样式

React推荐使用内联样式,使用 camelCase 语法来设置内联样式。(camelCase 语法 < 骆驼拼写法 > :依靠单词的大小写拼写复合词的做法,如font-sizefontSize代替)

var myStyle = {
    fontSize: 100,
    color: '#FF0000'
};
ReactDOM.render(
    <h1 style = {myStyle}>菜鸟教程</h1>,
    document.getElementById('example')
);

四、注释

注释要写在花括号里

ReactDOM.render(
    <div>
    <h1>菜鸟教程</h1>
    {/*注释...*/}
     </div>,
    document.getElementById('example')
);

五、数组

JSX 允许在模板中插入数组,数组会自动展开所有成员

var arr = [
  <h1>菜鸟教程</h1>,
  <h2>学的不仅是技术,更是梦想!</h2>,
];
ReactDOM.render(
  <div>{arr}</div>,
  document.getElementById('example')
);

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值