帖子
帖子
用户
博客
课程
显示全部楼层
30
帖子
0
勋章
44
Y币

[云开发] model异步问题

[复制链接]
发表于 2015-5-9 08:27:39
function count()
{                       
var model = api.require('model');
                        var query = api.require('query');
                model.config({
                            appId: "A6973137458204",
                            appKey: "716831C7-EA2A-AECB-182D-BC7BF7A4E4E0"
                });
                        query.createQuery(function (ret, err) {
                    if (ret && ret.qid) {
                        query.whereEqual({
                            qid: ret.qid,
                            column: 'self',
                            value: 'xue'
                        });
                        model.count({
                        class:'friends',
                        qid:ret.qid
                },function(ret,err){
                        alert("第一个query查询里的count值:"+ret["count"]);
                        $api.setStorage("friend_count",ret["count"]);
                        return ret["count"];
                });
                }
                });
}
                    alert("query外的count值为:"+count());
                    alert("setStorage里的值为:"+$api.getStorage("friend_count"));

运行结果:第一个query查询里的count值:1
query外的count值为:undefined(我知道是异步问题,有没有好的解决办法,让他先执行完成,求教!);
setStorage里的值为:1(之后我执行了另一个查询,想用$api.getStorage("friend_count"),但是都是用的上一次运行时的$api.getStorage("friend_count"),这是为什么,求教!);

异步的,要写到 回调里面
您需要登录后才可以回帖 登录

本版积分规则