【发布时间】:2018-01-03 18:38:29
【问题描述】:
我正在尝试从 getColumn 函数返回 result 参数。记录时,它返回未定义。
connection函数连接到一个SQL DB,查询返回一个数据集。
如何将变量传递回承诺链?
getColumn = function(columnName, table) {
sql.connect(config.properties)
.then(result => {
let request = new sql.Request();
request.query("SELECT " + columnName + " FROM " + table)
.then(result => {
// want to return this result from the getColumn function
return result
}).catch(err => {
// Query error checks
})
}).catch(err => {
// Connection error checks
})
} //
console.log(getColumn('username', 'Login'))
【问题讨论】:
-
你试过在
sql.connect()和request.query()前面加一个return吗?这可能只是工作。getColumn()会返回一个 Promise,所以你需要另一个then。 -
然后解决该承诺并获得结果,否则您可能需要使用回调
-
好的,然后执行
getColumn('username', 'Login').then((result) => console.log(result));之类的操作。
标签: javascript promise