美文网首页
iOS js交互直接卡死的问题

iOS js交互直接卡死的问题

作者: 笨鱼天阳 | 来源:发表于2022-01-20 15:27 被阅读0次

    新手入门
    请多指教

    前言

    由于页面部分统计图使用的JavaScript中的eChart库实现,所以最近的需求改动中,需要处理部分交互问题。其中有一个交互,在iOS12中直接卡死了。。。
    嗯,测试部有一部iOS12的手机。。。

    问题定位

    通过逐步排查,最终定位到在执行EChart.dispatchAction时出现问题。

    myChart.dispatchAction({
        type: 'showTip',
        seriesIndex: 0,
        dataIndex: index
    });
    

    参考大家讨论的常见交互卡死的资料,尝试了很多方法。
    比如:在js端使用 setTimeout(function(){}, 1)
    比如:在iOS端使用 performSelectorOnMainThread

    最终结果都不太满意。
    不过基本可以确定是类似的问题。

    然后这个bug还有个特殊的情况,在高版本上是没有问题的。只有在12以下版本出现了类似问题。
    介于这个想法,看看是不是有什么升级的方法。

    查看代码的时候,才注意到项目使用的还是 UIWebView
    一查资料,好嘛,已经不推荐使用了。
    现在推荐的 WKWebView

    UIWebView 更换为 WKWebView

    查看了下相关的Api之后,做了简单的更换处理。

    运行代码测试。

    直接没问题了!

    结语

    挺无语的,还是要时刻关注新Api动向,及时更新app中的相关功能。

    相关文章

      网友评论

          本文标题:iOS js交互直接卡死的问题

          本文链接:https://www.haomeiwen.com/subject/blyjhrtx.html