v-masonry踩坑 数据不重绘问题

在一堆数据中 数据发生改变  但是页面没有发生重绘  (nextTick)

描述场景
我的小组里边  有很多数据   但是当我退出小组回来之后  瀑布流出现空白情况

请看图

v-masonry踩坑 数据不重绘问题_第1张图片

通过查看文档发现$redrawVueMasonry可以实现重绘

于是各种调用不生效,最后发现  把他写在nextTick里边才生效 

有当数据发生改变  之后!!!请求完毕之后  再去调用方法  才有用   所以从watch里边进行监听

getCurrentInstance是vue里边的一个方法

    watch(
      () => dataList.value,
      (val) => {
        if (val) {
          
          nextTick(() => {
            console.log(val, "val----1-19");
            const instance = getCurrentInstance();
            const _this = instance.appContext.config.globalProperties;
            console.log(_this, "this---1-19");
            _this.$redrawVueMasonry();
          });
        }
      }
    );

你可能感兴趣的:(javascript,前端,vue.js)