在NodeJs中传递Require中的参数

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (407)

我有一个名为bla.js的文件,它导出两个函数:

bla.js

module.exports = function add3(number){
  return number + 3
}
module.exports = function add5(params) {
  return params + 5
}

然后我在app.js中调用此文件,传递数字5,就像这样

app.js

console.log(require(./bla)(5))

为什么只有10号出现在控制台?和函数add3?

提问于
用户回答回答于

如果它们在同一个文件中,那么您将覆盖正在导出的内容。你可以做一些事情。

// bla.js
module.exports.add3 = function(num) {
  return num + 3;
}

module.exports.add5 = function(num) {
  return num + 5
}


// test.js
const blah = require('./bla')

console.log(blah.add3(10)) // 13
console.log(blah.add5(1)); // 6

或者,导出一个闭包:

module.exports = function(base) {
  return function(adder) {
    return base + adder;
  }
}

console.log(blah(200)(3)) // 203

扫码关注云+社区

领取腾讯云代金券