const 后的意外标记

Unexpected Token after const

当我尝试指定常量时,我​​在 React 中收到意外的标记错误,我似乎无法弄清楚原因。

我的代码非常简单,我几乎完全遵循了 react-bootstrap 示例 here

我的代码如下:

import { Component, PropTypes } from 'react';

var rbs = require('react-bootstrap'),
Panel = rbs.Panel;

export default class ResumeSection extends Component {
  constructor(...args) {
    super(...args);
    this.state = {
      open: true
    };
  }

  const title = (
    <h3>Panel title</h3>
  );

  render() {
    return (
      <Panel collapsible expanded={this.state.open}>
        <p>Body</p>
      </Panel>
    );
  }
}

错误发生在 const 之后的 title 上,只是说 SyntaxError: Unexpected Token

你不能像这样在 class 主体中定义常量;它应该被移动到一个方法中。

render() {
  const title = (
    <h3>Panel title</h3>
  );
  // ...
}

显然,这叫做 "Public Class Field Syntax" 并且已经作为插件在 babel 中可用,babel-plugin-transform-class-properties。不过我还没试过。

附加参考是reactjs.org events guide