gpt4 book ai didi

javascript - 同步 Breeze ExecuteQuery

转载 作者:行者123 更新时间:2023-12-02 17:50:04 24 4
gpt4 key购买 nike

我使用 Breeze Promise ExecuteQuery 从数据库获取数据:

var getdata = function(){
var manager = new breeze.EntityManager(serviceName);
var query = new EntityQuery().from('MyTable');
manager.executeQuery(query)
.then(function(data){
//line1
console.log('success');
});
//line2
console.log('end');
}

有什么方法可以使这个函数同步:在第1行完成(或查询失败)之前不执行第2行?

谢谢

最佳答案

没有。一旦函数是异步的,就没有真正的方法可以使其同步,但您可以链接 promise 。即

var getdata = function(){
var manager = new breeze.EntityManager(serviceName);
var query = new EntityQuery().from('MyTable');
manager.executeQuery(query).then(doThis).then(doThat);
}

function doThis(data) {
console.log('success');
}

function doThat() {
console.log('end');
}

var getdata = function() {
var manager = new breeze.EntityManager(serviceName);
var query = new EntityQuery().from('MyTable');
manager.executeQuery(query).then(function(data) {
console.log('success');
}).then(function() {
console.log('end');
}

或者您可能需要考虑让 getData 函数本身返回一个 promise 。您可以在这里阅读更多相关信息:https://github.com/kriskowal/q

关于javascript - 同步 Breeze ExecuteQuery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21450502/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com