网络不通时,如何使获取线上版本号不阻碍页面的渲染

来源:14-6 打包发布React Native项目【收获果实】

慕虎8257763

2020-03-02

老师:
你好,我在使用react native更新app时,并没有使用codepush,而是使用的

import { getAppstoreAppMetadata} from "react-native-appstore-version-checker"

调用的方式为
图片描述
在初始页调用的代码为

console.log("test1");
ctvistaUpgrade.compareVersion();
console.log("test2");

然后运行react-native run-android,和react-native run-ios
在android平台的debug模式下,先打印出test1,然后紧接着打印出test2,(说明了这是一个异步操作)。app使用的是play store平台,因为这是一款针对老外开发的一款app,所以放在play store上,但是国内访问play store很不稳定,这就导致ctvistaUpgrade.compareVersion(),这段代码执行的时间非常长,而且在执行这段代码的同时,页面一直处于等待状态,而当这段代码执行成功后,页面立马渲染了,请问有没有什么方法可以,解决这个问题,就是在执行这段代码的同时也能让页面很快的渲染出来?

写回答

1回答

CrazyCodeBoy

2020-03-03

建议将这个代码放到单独的单例的工具类中执行,执行完成之后通过callback或广播通知到调用的地方。

1
0

RN入门到进阶,打造高质量上线App

解锁React Native开发应用新姿势,React Native新版本热门技术

3144 学习 · 3241 问题

查看课程