babelify 6 avec browserify et la es2015 preset n'est pas de travail

Je cherche à utiliser la nouvelle babel de presse, et en essayant d'utiliser le es2015 preset babel ne semble pas être en mesure de comprendre flèche fonctions?

Mon installation sur la pré-babel6 a été comme suit:

transform: [['babelify', {sourceMap: false, stage: 0, optional: 'runtime', ignore: ["*.min.js"]}]]

et avec babel6

transform: [['babelify', {"presets": ["es2015"]}]]

qui ne fonctionne pas. Pourquoi est-ce?

modifier

ajoutant "stage-0" se débarrasser de la syntaxe des messages d'erreur, mais a arrêté moi d'être en mesure d'étendre n'importe quoi avec l'erreur: 'this' is not allowed before super() quand j'ai en effet obtenu un super() appel.

modifier

Créé une simple application de test avec quelques es7 et essayé d'utiliser le babel-core exiger crochet, même problème.

modifier

Ok, donc j'ai rétréci vers le bas à la scène-0 travailler autrement babeljs 6^.

Voici ce que j'ai remarqué:

Exécuter le fichier

require("babel-core/register")(
    {
        presets: ["es2015", "stage-0"]
    }
);

require("./app.js");

Fonctionne avec:

class extendable {
    constructor() {
        console.log('extended')
    }
}

class app extends extendable {

    constructor() {

        super();

        this.method();
        this.method2();
    }

    method() {
        //arrow functions
        setTimeout(() => {
            console.log("works")
        }, 1000)
    }

    /**
     * arrow function method
     */
    method2 = () => {
        console.log('works')
    }
}
new app();

Ne fonctionne pas avec:

class extendable {
    constructor() {
        console.log('extended')
    }
}

class app extends extendable {

    constructor() {

        super();

        this.method();
        this.method2();
    }

    method() {
        //arrow functions
        setTimeout(() => {
            console.log("works")
        }, 1000)
    }

    /**
     * arrow function method
     */
    method2 = () => {
        //give an error: 'this' is not allowed before super()
        this.state = "hello";
    }
}
new app();

Donc je suis un peu confus. Est-ce vraiment une syntaxe incorrecte? Comment ai-je été en mesure d'utiliser cette pré-babel6?

Comment êtes-vous de l'exécution de browserify/babelify? Quelles sont les versions des modules avez-vous installé?
Je suis d'exécution par le biais de module-deps, tout est à sa dernière version.

OriginalL'auteur Julien Vincent | 2015-11-10