Hello! 欢迎来到小浪资源网!



Vue页面重绘导致第三方组件van-calendar重新渲染:如何解决?


Vue页面重绘导致第三方组件van-calendar重新渲染:如何解决?

vue页面重绘导致第三方组件重新渲染

在线表单场景下,使用vue开发。问题如下:

问题描述:
在父组件中,使用了子组件,并通过setinterval不断改变父组件中的一个ref值。在子组件中,使用了第三方组件van-calendar。当在子组件中点击van-Calendar切到上一个月之后,会自动切换回7月,像是重新渲染了一样。

原因分析:
正常情况下,calendar组件不会重新渲染。这种情况可能是触发了组件内部的监听导致刷新。

立即学习前端免费学习笔记(深入)”;

解决方案:

检查以下可能导致刷新的写法:

  • 将van-calendar上的max-date绑定到一个data中的变量,而不是使用new date()。
  • 检查van-calendar组件上的属性是否有变化,比如绑定的v-model、option之类的。
  • 避免使用key属性导致强制刷新,如:
<child :item="item" :key="item" />

相关阅读