请问一下。
对于
var localVer = null;
plus.runtime.getProperty(plus.runtime.appid, function(inf) {
localVer = inf.version;
});
console.log("当前应用版本:" + localVer);
这种异步方法,如何用代码实现串行。因为上述代码经常会显示localVer为NULL
还有诸如plus.io.requestFileSystem
plus.downloader.createDownload
plus.runtime.install
这些方法。
我目前只能在方法内进行代码的后续操作。
4 个回复
大鱼泡泡 (作者)
还是自己的事。自己解决吧。
javascript异步原理:
异步代码会被放入一个事件队列,等到所有其他代码执行后才进行,而不会阻塞线程。
所以只需要将这段代码改成这样:
var localVer = null;
plus.runtime.getProperty(plus.runtime.appid, function(inf) {
localVer = inf.version;
});
setTimeout(function() {
console.log("当前应用版本:" + localVer);
}, 100);
当然,对于timeout 中的时延,要看实际的业务逻辑处理来把握好分寸。
目前,这种方法还行。看一下能不能找到更好的方法
大鱼泡泡 (作者)
自己顶起来
benjaminatcd
我以前是直接存到localStorage然后其他地方再取出来 。。。
1***@qq.com - 学习
我现在也是这个问题,目前我的解决方式是运行的代码都放在这个里面,但是没办法创建全局变量,每次都要获取,就很麻烦