vue动态添加组件

使用场景

有一个列表页如下,当我点击查看的时候,
vue动态添加组件_第1张图片
会弹窗,弹窗的主要内容是组件,
vue动态添加组件_第2张图片

每个组件的内容都不一样,我不可能在这个列表页把所有的组件都import进来,所以在弹窗显示的时候scope.row获取当前记录的信息,然后根据信息中的对应关键字段(如下面我代码中的programe_id)就是组件唯一的文件名,拼接一下就能动态添加组件

例如需要添加的组件如下:
在这里插入图片描述

核心代码

methods:{
  add(msg){
    let programe_id = msg.programe_id
    this.$options.components['appTable'] = require('@/components/apps/app' + programe_id+"temp.vue").default
  }
},
render: function (createElement) {
    return createElement('appTable')
}

你可能感兴趣的:(vue,vue.js,vue-cli3,组件化)