我正在尝试在函数中使用 public void Login(string user, string pass)
{
this.Username = user;
this.Userpassword = pass;
// more code here
}
,但是它永远不会返回。这是我的代码:
promise
查询有效,我可以在function getData(id) {
return new Promise(function(resolve, reject) {
DbUtil.connection.query("my query... ", [id],
function (error, results, fields) {
if (error) {
reject(error);
} else {
resolve(results);
}
}
);
})
}
块中看到其结果。但是函数本身不会返回。我尝试在else
之后以及resolve
函数本身之后添加return语句。但是它仍然不会返回。
我想念什么?
编辑:我怎么知道该函数不返回?因为
Promise
在上面的function main() {
var data = getData(1);
console.log("data returned? " + data);
}
函数中,永远不会调用log语句。
答案 0 :(得分:1)
这不是履行诺言的正确方法
尝试一下:
var data;
getData(1).then(function(d) {
console.log(d);
data = d;
});
// Since a Promise is async, you can't log data here
或
async function main() {
var data = await getData(1);
console.log(data);
}
请注意,此示例不处理catch
情况。