使用类时使用Babel和JSX的SyntaxError

时间:2015-12-16 17:20:38

标签: javascript babeljs jsx

我正在尝试使用webpack,babel和jsx

创建类
import Observable from '../../observable';


abstract class AbstractClient implements Observable  {
    var _name: string,
    var _config: object,

    function constructor(config: object) : variant,

    ...
}
export default AbstractClient;

这是我得到的错误:

ERROR in ./app/adapter/AbstractAdapter/aclient.jsx
Module build failed: SyntaxError: /home/vinz243/Documents/nTorrent/app/adapter/AbstractAdapter/aclient.jsx: Unexpected token (5:9)
  3 | 
  4 | 
> 5 | abstract class AbstractClient implements Observable  {
    |          ^
  6 |   var _name: string,
  7 |   var _config: object,
  8 | 

我的巴贝尔预设

 presets:['es2015','stage-0','react']

1 个答案:

答案 0 :(得分:1)

ES2015中没有对抽象类的语法支持,这就是为什么会出现意外的令牌错误。 abstract也不是es2015中的关键字,因此解释器可能将abstract解释为变量名。

有一些在Javascript中实现抽象类模式的方法。