使用默认参数的模块导出

Module export with default parameters

我正在尝试在 Node.js 中导出一个包含某些功能的模块。其中一个函数具有可选参数,其中包括默认值。

module.exports = {
    foo = (a, b = 2, c = {y:0}) => {
        // Code
    },
    bar = () => { 
        // Codes 
    },
}

不导出时功能正常。移入module.exports时,出现如下错误:

SyntaxError: Invalid shorthand property initializer
    at Module._compile (internal/modules/cjs/loader.js:723:23)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
    at Module.load (internal/modules/cjs/loader.js:653:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
    at Function.Module._load (internal/modules/cjs/loader.js:585:3)
    at Module.require (internal/modules/cjs/loader.js:692:17)
    at require (internal/modules/cjs/helpers.js:25:18)
    at Object.<anonymous> (/<link to this file>:2:62)
    at Module._compile (internal/modules/cjs/loader.js:778:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
    at Module.load (internal/modules/cjs/loader.js:653:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
    at Function.Module._load (internal/modules/cjs/loader.js:585:3)
    at Module.require (internal/modules/cjs/loader.js:692:17)
    at require (internal/modules/cjs/helpers.js:25:18)
    at Object.<anonymous> (/<link to server.js file>:20:18)

我知道可以在函数代码中设置默认参数。不过,括号中的默认参数在 module.exports 中不起作用吗?对修复它有帮助吗?谢谢

您的对象表示法不正确:

foo = () => {}更改为foo: () => {}

module.exports = {
    foo: (a, b = 2, c = {y:0}) => {
        // Code
    },
    bar: () => { 
        // Codes 
    }
}