micro-app
micro-app copied to clipboard
性能优化,是否应该缓存 processCode 后的内容,而不是之前的内容
背景

首先如图所示,processCode 还是比较花费时间的,基本都是 30ms 以上,已经超过了一帧的时间(时间长)。
其次,对于已缓存的 JS 或者 CSS,现在缓存的是原内容,这就意味着,对于重复的 JS 或者 CSS 还是会重复走 processCode 这样的过程,而且最终的结果是一致的。
期望的效果
既然最终的结果是一致的,那是否应该缓存处理后的结果,而非处理前的结果,甚至是处理后的 DOM 节点,这样就极大的提高了重复执行的效率。
microApp.start的代码发一下呢

涉及到公司代码,不能随便发 😂
但里面有很多 replace 的逻辑,原因是,我们希望子应用尽可能少的改造,所以主应用做了很多的兼容,尤其是有 angular 1.x 代码处理比较多。
你是希望被插件处理过的js可以缓存下来,避免重复执行吧,但我们没有办法确定每次渲染时插件返回的js内容是否一致
以后会增加一个选项,让开发者选择是否需要缓存数据
以后会增加一个选项,让开发者选择是否需要缓存数据
嗯嗯,明白。确实会出现同一个链接,不同时间点的请求,确实可能不一样。
增加一个选择可以,缓存最终的结果,而不是最初的内字符串内容。