vue 强制刷新子组件

Posted asker009

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vue 强制刷新子组件相关的知识,希望对你有一定的参考价值。

原因:因为父组件有缓存等因素,子组件创建后没有释放,传入参数无效,使用v-if的特性(销毁和重建)可以强制刷新子组件

    <el-drawer
      ref="detailTable"
      :title="detailTitle"
      :append-to-body="true"
      :visible.sync="dialogDetailFormVisible"
      direction="ltr"
      :wrapper-closable="false"
      size="90%"
    >
      <div class="el-drawer__body">
        <el-row :gutter="10">
          <el-col :span="22" :offset="1">
            <ProjectMileStone v-if="forceRefresh" :project-id="projectId" />
          </el-col>
        </el-row>
      </div>
    </el-drawer>
toView(row) {
      this.forceRefresh = false
      this.projectId = row.projectId
      this.detailTitle = row.projectName
      // 强制刷新子组件
      this.$nextTick(() => {
        this.forceRefresh = true
        this.dialogDetailFormVisible = true
      })
    }

 

以上是关于vue 强制刷新子组件的主要内容,如果未能解决你的问题,请参考以下文章

子组件的动态刷新问题

如何在父组件中强制刷新子组件

Vue组件强制刷新的解决方案

关于vue强制刷新

vue 强制刷新组件

Laravel Livewire - 如何强制子组件刷新