其实本人是知道v-if 与 v-show的区别 

v-if 懒加载  只有为真时 才挂载 才执行  切换频繁时运行开销大

v-show 饥饿加载  先执行  后用缓存  切换基本极少时 用这个也可以 但一般会带来没必要的运行开销

可惜,我还是蠢了。蠢在哪里?竟然耗了几十分钟

created() {
     this.initScreen()
  },

initScreen() { 
     this.$nextTick(() => {
            if (this.$refs.mediaDragTable) {
              this.setMediaSort()
            }
          })
}

<div v-if="activeItem.type === 6">

 <el-table
                        ref="mediaDragTable"
                        :data="imgVidiolistInfo3"
                        row-key="key"
                        size="mini"
                      >
                        <el-table-column type="index" align="left" width="35">
                        </el-table-column>


</el-table>
</div>

如上,一直报空指针,为啥,因为我是v-if 懒加载,所以是找不到这个dom节点的.于是我直接用v-show,终于解决了。

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐