kailun.li 2023-01-01 12:30 采纳率: 0%
浏览 19

vue3动态组件应该如何实现

问题遇到的现象和发生背景

vue2 升级 vue3 后 动态组件 不可用

遇到的现象和发生背景,请写出第一个错误信息

img


一个工作流平台,有一个界面查询全部的待办流程,每一个流程都是一个组件,组件的地址存到了数据库中,点击标题跳转到不同的组件,vue2 使用如下代码能实现,升级到vue3 后代码失效,尝试过 defineAsyncComponent 报 Failed to resolve module specifier,请问在vue3中这种应该如何实现

<template>
  <div>
    <el-dialog :title="title" :visible.sync="open" append-to-body>
      <component :timer="timer" v-if="dynamicComponent" :is="dynamicComponent" :formId.sync="formId" :actId="actId"></component>
    </el-dialog>
  </div>
</template>

<script>
  export default {
    name: 'dynamicDialog',
    props: {
      todo: {
        type: Object,
        default: null
      },
    },
    computed: {
      dynamicComponent() {
        if (this.todo != null) {
          this.timer = new Date().getTime();
          this.formId = this.todo.id;
          this.actId = this.todo.actId;
          let filename = this.todo.formView;
          this.title = this.todo.todoTitle;
          this.open = true;
          return (resolve) => require([`@/views/${filename}.vue`], resolve);
        } else {
          return null;
        }
      },
    },
    created() {

    },
    data() {
      return {
        formId: "",
        timer: "",
        open: false,
        title: ""
      }
    },
    methods: {}
  }
</script>
  • 写回答

2条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-01-01 14:14
    关注
    评论

报告相同问题?

问题事件

  • 修改了问题 1月1日
  • 创建了问题 1月1日

悬赏问题

  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
  • ¥15 ETLCloud 处理json多层级问题
  • ¥15 matlab中使用gurobi时报错
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭
  • ¥15 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么