收藏
回答

强烈建议增加app.js onLaunch 加载完成后再进page onload 的功能控制或配置?

场景描述:

众所周知,许多的小程序,许多的业务场景,都需要进入小程序前准备好一些基础数据,才能进入页面

比如:全局皮肤设置,切换门店,系统配置等功能都需要先拿到参数后才能使用

存在问题:

小程序的执行顺序app.js onlaunch 肯定是在page onload方法之前确实没错,因为同步执行,虽然onlaunch方法先执行,可能onlaunch还没执行完呢都已经进入到page 的onload方法了,会造成数据异常和系统错误。

当然一些解决办法能解决这类问题:比如等待、比如判断是否加载完成,没有再处理或者等待直到完成再处理页面业务,又或者Promise处理等等吧,反正大家再没办法的情况下想出了一些不是拌饭办法的办法。但这期间会造成N多的冗余代码和不必要的麻烦。而且有时你根本不知道用户进入的第一个页面是哪个(比如分享),所以要把所有有可能成为第一个入口的页面都加上,困难多,BUG多。

疑问:

微信小程序为什么不只支持先onlaunch----onlaunch执行结束后 --- 执行page 的onload的模式呢?

业务场景需求量少?没有考虑到?技术问题?

建议:

官方给出onlaunch 执行然后同步进onload的模式肯定是有道理的,而且符合大部分人的利益的。但也看到了有许多的开发这再提这样的问题。

能不能微信小程序从框架上解决,比如增加一个全局配置,默认就是目前模式,有需要的配置下,就能实现先onlaunch----onlaunch执行结束后 --- 执行page 的onload方法。

能不能微信小程序从框架上解决,比如增加一个全局配置,默认就是目前模式,有需要的配置下,就能实现先onlaunch----onlaunch执行结束后 --- 执行page 的onload方法。

能不能微信小程序从框架上解决,比如增加一个全局配置,默认就是目前模式,有需要的配置下,就能实现先onlaunch----onlaunch执行结束后 --- 执行page 的onload方法。


或者在onlaunch 方法前加个标识,有就是onlaunch 执行结束后(重点:执行结束后,不是执行后)再跳转到page





回答关注问题邀请回答
收藏

1 个回答

  • 三疯
    三疯
    08-31

    希望有需求的朋友们 多发表下自己意见

    08-31
    有用
    回复
登录 后发表内容
问题标签