关于react中{}的问题

看别人react的代码得时候经常被{}符号搞晕,不知是es6的语法还是JSX得语法,比如下面2个例子

1.

import React, {PropTypes} from 'react';

问题:这里的PropTypes为什么要加上{}呢?如果它是个变量,为什么React不加{}


2.

class ItemEditor extends React.Component {
  render() {
    const { onSave, onCancel } = this.props;

    const item = this.props.item || {
      title: '',
      content: '',
    };
...
...

问题:这里的const { onSave, onCancel } = this.props; 是不是就是es6的解构赋值?相当于一下这段代码么?

const onSave = this.props.onSave;
const onCancel = this.props.onCancel;
阅读 3k
3 个回答

第二个问题你已经自己回答了,
第一个问题是关于es6的导入导出的理论

es6总 导出有两种
一种是默认导出
export default abc;
另外一种是其他导出
export bcd;
其中第一种,在一个文件中只能使用一次,第二种可以导出多次
一般来说 import 默认导出的模块,不用{}, 第二种就要用{},但是也可以不用
比如 import * as totalObj from "../"
具体请参考下es6的模块块的语法

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题