起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1459|回复: 1

[处理中3] SqliteUtil.executeSql是不是异步执行的?

[复制链接]

26

主题

73

帖子

156

积分

初级会员

Rank: 2

积分
156
QQ
发表于 2016-11-25 20:58:00 | 显示全部楼层 |阅读模式
我在data的CustomRefresh使用下面代码取数据,能取到数据,但是单步跟踪,执行到SqliteUtil.executeSql,没有阻塞等待取回数据,而是直接跳到完成。
SqliteUtil.executeSql(db, msql, [], onSuccess, onError);
                function onSuccess(res) {
                        // 转换返回数据结果
                        debugger;   
                        var table = SqliteUtil.rowsToTable(res.rows);
                        data.loadData(table, append);
                        // 异步执行模式下,加载数据后必须执行doRefreshAfter
                        data.doRefreshAfter(true, event.options);
                }
                function onError(msg) {
                        data.doRefreshAfter(false, event.options);
                }       
我加了两个data,直接执行跳过两个data对应的CustomRefresh,一会又跳转到第一个data对应的function onSuccess(res) 内的debugger,可以看出是异步的。
在这想问问是不是都是异步执行模式的,是否有阻塞等待执行结果再往下执行的方法。
发表于 2016-11-28 10:04:32 | 显示全部楼层
  // 异步执行模式下,加载数据后必须执行doRefreshAfter

请参考API ,查询下refreshData  方法!
可以在调用refreshData 的时候指定参数,设置为同步调用!!


关于SqliteUtil.executeSql 的介绍:可以看下:/Native/plugins/com.brodysoft.sqlitePlugin/README.md

也可以自己动手试试,在SqliteUtil.executeSql 的里边和外边打印信息或者debugger ,如果外边代码能先执行到,那就说明是异步的!否则就是同步
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2025-6-23 13:42 , Processed in 0.116020 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表