收藏
回答

微信小程序页面设置初始渲染缓存(initialRenderingCache)后,无法取消?

我在首页的index.json配置文件里添加节点

{ 
 "initialRenderingCache": "static"
}

手机初始渲染缓存可以生效,但是当我删除掉这个配置节点,手机的初始渲染缓存依然可以生效,我把小程序删除,再重新扫码进入,初始渲染缓存依然生效。

请问如何让该配置取消?

最后一次编辑于  2022-03-03
回答关注问题邀请回答
收藏

6 个回答

  • LastLeaf
    LastLeaf
    置顶回答2022-03-07

    感谢反馈!已确认在开发版和体验版上确有类似问题,我们会尽快修复上线。

    2022-03-07
    有用 1
    回复 1
    • LastLeaf
      LastLeaf
      2022-03-07
      目前可以通过设置为 dynamic 模式并调用 this.setInitialRenderingCache(null) 来清除缓存。
      2022-03-07
      回复
  • 小许
    小许
    发表于移动端
    2022-07-08
    朴朴
    2022-07-08
    有用
    回复
  • 坡三
    坡三
    发表于移动端
    2022-06-23
    The same
    2022-06-23
    有用
    回复
  • ying
    ying
    发表于移动端
    2022-06-21
    好 謝謝,
    2022-06-21
    有用
    回复
  • 短尾猫
    短尾猫
    2022-03-08

    请管理员看下

    2022-03-08
    有用
    回复
  • Cjiang
    Cjiang
    2022-03-04

    请具体描述问题出现的流程,并提供能复现问题的简单代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html)。

    2022-03-04
    有用
    回复 10
    • 短尾猫
      短尾猫
      2022-03-05
      代码片段:https://developers.weixin.qq.com/s/B6mwNxmw74xT

      操作顺序,务必看操作顺序!!!!!
      一、无 initialRenderingCache 配置
      (1)注释掉 index.json 文件的 initialRenderingCache: static配置,顺序反了,没法测试bug
      (2)点预览,用手机扫码,会看到首屏渲染出的结果是"值改变",速度会比较慢,因为加了for循环模拟阻塞操作。
      二、添加 initialRenderingCache 配置
      (1)还原 index.json 文件的 initialRenderingCache: static配置。
      (2)点预览,用手机扫码,会看到的首屏的渲染出的结果是"默认值",然后变成"值改变",因为"初始渲染缓存"生效了
      三、无 initialRenderingCache 配置
      (1)注释掉 index.json 文件的 initialRenderingCache: static配置
      (2)点预览,用手机扫码,预期结果应该和一一样,实际结果和二一样,"初始渲染缓存"仍然生效。


      微信开发者工具:windows版 1.05.2203030,手机mate20X
      2022-03-05
      回复
    • Cjiang
      Cjiang
      2022-03-06回复短尾猫
      参考文档:https://developers.weixin.qq.com/miniprogram/dev/framework/view/initial-rendering-cache.html#%E5%88%9D%E5%A7%8B%E6%B8%B2%E6%9F%93%E7%BC%93%E5%AD%98%E5%B7%A5%E4%BD%9C%E5%8E%9F%E7%90%86
      你的代码里用了 this.setData 是错误的做法,静态初始渲染缓存指针对纯静态部分。
      2022-03-06
      回复
    • 短尾猫
      短尾猫
      2022-03-06回复Cjiang
      我知道"初始渲染缓存"缓存的是data部分的变量,我加this.setData的目的,是为了让渲染的页面视觉上有变化,否则怎么判断 "静态初始渲染缓存"生效没有。


      配置“静态初始渲染缓存”的预期的应该是,先看到"默认值",再看到"值改变"。


      不配置“静态初始渲染缓存”的预期的应该是,只能看到"值改变"。但是,如果配置“静态初始渲染缓存”后,又取消"“静态初始渲染缓存”,你仍然会先看到"默认值",再看到"值改变"。
      2022-03-06
      回复
    • 短尾猫
      短尾猫
      2022-03-07
      请管理员看下
      2022-03-07
      回复
    • Cjiang
      Cjiang
      2022-03-07回复短尾猫
      看看图片的“注意”哦
      2022-03-07
      回复
    查看更多(5)
登录 后发表内容