Ho una classe ES6 con un decoratore. Ha un metodo statico foo. Tuttavia quando provo ad accedere al metodo statico, è indefinito.Il metodo statico non è definito nelle classi ES6 con un decoratore in reactjs
@withStyles(styles)
class MyComponent extends Component {
static foo(){
return "FOO";
}
render(){
var x = MyComponent.foo; // x=undefined
}
}
Quando rimuovo il decoratore, posso accedere al metodo statico. Non è più indefinito.
class MyComponent extends Component {
static foo(){
return "FOO";
}
render(){
var x = MyComponent.foo; // x=foo()
}
}
Esiste una soluzione alternativa per questo problema?
I decoratori non fanno parte di ES6/ES2015. Questo è probabilmente un bug nel transpiler che stai usando (babel?). –
Cosa fa il decoratore? O il tuo transpiler o l'implementazione del decoratore sembra essere buggato. – Bergi
Questa [risposta SO] (http://stackoverflow.com/questions/34766822/class-decorators-in-es7?rq=1) spiega come funziona il decoratore withStyles. – GunnerFan