想被带飞的鱼 2022-09-30 10:08 采纳率: 76.9%
浏览 18
已结题

子组件的生命周期created会覆盖父组件传递下来的通过watch监听修改过一遍的值。

表格数据的替换,子组件通过方法使用 created渲染数据,但是另一个地方数据通过父组件传递下来的数据通过监听修改数据,但是子组件原生就会执行created,会覆盖父组件传递下来的值,这个该如何解决

父组件传值给子组件(taskJournal)

 <constructionLog
          :showDetails="false"
          :commonVariable="true"
          :taskJournal="taskJournal"
          class="white"
          ref="login"
        />

子组件监听并修改


 props: {
    taskJournal: {
      type: Array,
    },
  },
watch: {
    taskJournal:function(val){
      if(val){
        this.tableData = val;
      }
    }
  },

子组件初始渲染的值created

  created() {
    this.getData();
  },
 //获取列表
    async getData() {
      let data = await taskJournalFindAll(params);
      let datainfo = data.data;
      this.tableData = datainfo.tableList;
    },

子组件渲染列表


<el-table
        :data="tableData"
        ref="tableData"
      >
</el-table>
  • 写回答

1条回答 默认 最新

  • H5周 2022-09-30 10:21
    关注

    this.getData(); 放到mounted里面试试

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

    报告相同问题?

    问题事件

    • 系统已结题 10月8日
    • 已采纳回答 9月30日
    • 创建了问题 9月30日

    悬赏问题

    • ¥20 arcgis制做交通拥堵时变图
    • ¥15 AD20 PCB板步线 这个要怎么步啊
    • ¥50 关于《奇迹世界》1.5版本,数据修改
    • ¥15 请问这个问题如何解决(关键词-File)
    • ¥50 visual studio 2022和EasyX图形化界面
    • ¥15 找一下报错原因,纠正一下
    • ¥50 Cox回归模型Nomogram图制作报错
    • ¥20 SQL如何查询多级用户的数据
    • ¥15 给车牌识别代码加一个识别轮廓长宽比的代码
    • ¥30 商品价格预测的transformer模型优化