简体   繁体   English

使用类时使用Babel和JSX的SyntaxError

[英]SyntaxError using Babel and JSX when using class

I'm trying to create classes using webpack, babel and 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;

And here is the error I get: 这是我得到的错误:

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 | 

My babel presets 我的babel预设

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

There's no syntax support in ES2015 for abstract classes, that's why you get an unexpected token error. ES2015中没有抽象类的语法支持,这就是为什么您会收到意外的令牌错误的原因。 abstract is not a keyword in es2015 either, so the interpreter is probably interpreting abstract as a variable name. abstract在es2015中也不是关键字,因此解释器可能会将abstract解释为变量名。

There are methods of implementing an abstract class pattern in Javascript. 有一些在Javascript中实现抽象类模式的方法。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM