JSX中ES6备忘

简介

JSX是超文本标记语言的扩展,允许HTML与JavaScript的共存。

ES6中的括号

  • {}
    花括号中的内容,babel会当做JavaScript来解译
  • []
    从ECMAScript 2015开始,对象初始化程序语法还支持计算属性名称。这允许您将表达式放在括号中[],该表达式将被计算并用作属性名称。
class Reservation extends React.Component {
  constructor(props) {
    super(props);
    this.state = {
      isGoing: true,
      numberOfGuests: 2
    };

    this.handleInputChange = this.handleInputChange.bind(this);
  }

  handleInputChange(event) {
    const target = event.target;
    const value = target.type === 'checkbox' ? target.checked : target.value;
    const name = target.name;

    this.setState({
      [name]: value
    });
  }

  render() {
    return (
      <form>
        <label>
          Is going:
          <input
            name="isGoing"
            type="checkbox"
            checked={this.state.isGoing}
            onChange={this.handleInputChange} />
        </label>
        <br />
        <label>
          Number of guests:
          <input
            name="numberOfGuests"
            type="number"
            value={this.state.numberOfGuests}
            onChange={this.handleInputChange} />
        </label>
      </form>
    );
  }
}

ReactDOM.render(
  <Reservation />,
  document.getElementById('root')
);

上面代码中setState中用到[name]: value,暂时理解为用来引用变量。如果只写name,name就是指为this.state中key为name的变量赋值为value。注意this.setState中的this指的是Reservation组件

ES6中的箭头函数

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/Arrow_functions
http://es6.ruanyifeng.com/#docs/function#%E7%AE%AD%E5%A4%B4%E5%87%BD%E6%95%B0

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第2章 基本语法 2.1 概述 基本句法和变量 语句 JavaScript程序的执行单位为行(line),也就是一...
    悟名先生阅读 9,698评论 0 13
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,493评论 19 139
  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 28,086评论 1 45
  • 最怕跑步之后,胸口闷,疼痛,越怕什么越要去尝试。 慢跑五十分钟,挑战下自己。 中途感觉胸口好难受,脚步好沉重,手握...
    周海双阅读 2,701评论 0 0
  • 【原文】然行义未纯,检身多误。或见善而行之不勇,或救人而心常自疑,或身勉为善而口有过言,或醒时操持而醉后放逸。以过...
    人力资源管理中心阅读 4,571评论 0 0