Express导出类中的箭头功能 - 意外的令牌

问题描述 投票:3回答:3

我有我的类的文件,我导出并在express和Node中使用。我想使用箭头功能,这是一个例子:

class MyClass {

    myFunc(arg) {
        console.log(arg);
    }

    myArrowFunc = (arg1, arg2) => {
        console.log(arg1);
        console.log(arg2);
    };
}


module.exports = {
    MyClass
}

在添加myArrowFunc之前,一切正常。之后我运行应用程序后出错:

myArrowFunc = (arg1, arg2) => {
            ^
SyntaxError: Unexpected token =

我的节点版本是9.x所以它应该工作......或者我忘记了什么。

javascript node.js express arrow-functions
3个回答
2
投票

你不能把作业放在这样的类中。

为什么不把它放在构造函数中?您初始化其中的属性。

没有babeljs需要。

class MyClass {
    constructor(){
        this.myArrowFunc = (arg1, arg2) => {
            console.log(arg1);
            console.log(arg2);
        };
    }
    myFunc(arg){
        console.log(arg);
    }
}

1
投票

从节点版本v10.x.x开始,您可以使用node --harmony为类方法运行带箭头表示法的代码。 Harmony标志支持该语言的新ECMAScript 6功能。


0
投票

为了在Express应用程序中使用新的Javascript(es6),您需要安装babel来编译es6到es5代码。 Babel编译器允许您在Express应用程序中使用新的JavaScript功能。

在项目中使用babel编译器需要这些依赖项。

1)babel-cli:使用babel从命令行编译文件

2)babel-preset-es2015:所有es2015插件的Babel预设。

运行此命令以使用终端在nodejs项目中安装babel

npm install -save-dev babel-cli babel-preset-es2015

请关注此链接https://www.codementor.io/iykyvic/writing-your-nodejs-apps-using-es6-6dh0edw2o

© www.soinside.com 2019 - 2024. All rights reserved.