2016-12-10 2 views
-1

Ich versuche, eine Komponente mit ES2016-Syntax zu erstellen, wie:Syntax auf statische Klasseneigenschaft mit Babel

export default class { 
    static defaultProps = { 
    color: '#cc7f29', 
    } 
} 

Ich glaube static defaultProps = {} Syntax Teil ES2016 ist so geladen ich ES2016 Preset in Babel. Ich habe bereits babel-preset-es2016 installiert.

Dies gibt Fehler in der Zusammenstellung:

Module build failed: SyntaxError: Unexpected token (10:22) 

    8 | export default class extends React.Component { 
    9 | 
> 10 | static defaultProps = { 
    |      ^
    11 |  color: '#cc7f29', 
    12 |  theme: 'light', 
    13 | } 

BabelLoaderError: SyntaxError: Unexpected token (10:22) 

    8 | export default class extends React.Component { 
    9 | 
> 10 | static defaultProps = { 
    |      ^
    11 |  color: '#cc7f29', 
    12 |  theme: 'light', 
    13 | } 

Was mache ich falsch?

+0

Wenn Sie die Beschreibung [tag: ecmascript-7] lesen, können Sie sehen, dass öffentliche Klassenfelder nicht Teil dieser Revision sind. –

Antwort

1

Klasseneigenschaften sind Vorschläge für die ECMAScript-Stufe 2, daher müssen Sie stage 2 preset einschließen.

Die Voreinstellung für Stufe 0 funktioniert auch, da sie alle vorherigen Bühnenvoreinstellungen enthält.

Verwandte Themen