shenxianyan
shenxianyan
  • 发布:2018-11-03 10:37
  • 更新:2019-02-21 01:31
  • 阅读:2360

【报Bug】nvue页面中使用了setInterval函数后,返回上一级vue页面,会闪退。

分类:nvue

【报Bug】nvue页面中使用了setInterval函数后,返回上一级vue页面,会闪退。在beforeDestroy中也执行了clearInterval,依然闪退

【原因】已找到原因,是因为nvue中使用了uni.getStorage方法,该方法是异步的,返回上一个vue界面该方法没执行完,引起闪退。

2018-11-03 10:37 负责人:无 分享
已邀请:
shenxianyan

shenxianyan (作者) - weex先发

setInterval函数中调用了uni.getStorage方法

shenxianyan

shenxianyan (作者) - weex先发

android端,ios不会

shenxianyan

shenxianyan (作者) - weex先发

android端,ios不会

shenxianyan

shenxianyan (作者) - weex先发

原因已找出,是因为使用了uni.getStorage,换为weex的方法就不会了。

  • t***@163.com

    能具体说一下用weex的什么方法吗

    2019-02-21 01:31

t***@163.com

t***@163.com - 80后

        get_cache(key) {  
        return new Promise(function (resolve) {  
        try {  
            const storage = weex.requireModule('storage');  
            storage.getItem(key, e => {  
                if (e.result === 'success') {  
                    resolve(e.data);  
                    console.info(`获取缓存key='${key}'成功,result=`, e);  
                } else {  
                    resolve(false);  
                    console.warn(`获取缓存key='${key}'失败,result=`, e);  
                }  
            });  
        } catch (e) {  
            console.error(`获取缓存key='${key}'出现异常! >>>` + e.toString());  
            resolve(false);  
        }  
    });  
},

为什么我获取不了本地缓存啊!

该问题目前已经被锁定, 无法添加新回复