我有一个函数,可以从数据库中获取一些东西。我想将函数设置为接受DBConnection
字符串参数和ProductID
参数,但是由于很少提供此参数,因此我希望设置一个默认值。我尝试了以下方法:
const DBConfig = require('./db.config');
async function getProduct(DBConnection = DBConfig.SQLConnection, ProductID) {
console.log(ProductID) // says undefined
await DBConnection.connect()
......
}
我通过执行以下操作从另一个文件调用上述函数:
Product = await api.getProduct({ProductID: req.body.ProductID})
由于某些原因,无法执行上述操作。也就是说,我总是在控制台中获得undefined
的{{1}}。
如果仅执行以下操作,则可以在控制台中获得正确的ProductID
值打印:
ProductID
我正在将Webpack与babel-loader一起使用。我不认为这是一个翻译问题,但不确定。有任何想法吗?在我的Webpack配置中,我可以用它来处理const DBConfig = require('./db.config');
const DBConnection = DBConfig.SQLConnection,
async function getProduct(ProductID) {
console.log(ProductID) // prints in the console as { ProductID: '1234' }
await DBConnection.connect()
......
}
文件:
js
答案 0 :(得分:1)
我认为您希望对getProduct
的参数进行重构:
function getProduct({DBConnection = DBConfig.SQLConnection, ProductID}) {
...
}
然后您可以做:
Product = await api.getProduct({ProductID: req.body.ProductID})
应该不是webpack或babel的问题