如何在js中返回匿名函数?

时间:2019-04-15 04:26:45

标签: javascript node.js

我的节点项目中有以下代码。

import Joi from 'joi';

module.exports = function() {
    Joi.objectId = require('joi-objectid')(Joi);
}

当我尝试

export default function() {

它不起作用。如何使用export而不是es5 module.exports导出此功能?

3 个答案:

答案 0 :(得分:0)

为其命名或将其分配给变量:

export default function myFunc() {...}

答案 1 :(得分:0)

您可以这样写

import Joi from 'joi';       
  const myFunc = () => {
    Joi.objectId = require('joi-objectid')(Joi);
  }
export default myFunc; 

答案 2 :(得分:0)

由于您的环境是“ nodejs”,因此您可能未使用任何编译器。这意味着您必须遵循nodejs扩展才能允许es6模块。

要启用es6模块,首先需要将脚本的扩展名更改为mjs,然后使用node --experimental-modules index.mjs启动nodejs

另请参阅https://nodejs.org/api/esm.html