DynamicNotice.vue
603 Bytes
<template>
<component
:is="comp"
:formData="formData"
ref="compModel"
v-if="comp">
</component>
</template>
<script>
export default {
name: 'DynamicNotice',
data() {
return {
compName: this.path
}
},
computed: {
comp: function () {
if (!this.path) {
return null;
}
return () => import(`@/views/${this.path}.vue`)
}
},
props: ['path', 'formData'],
methods: {
detail() {
setTimeout(() => {
if (this.path) {
this.$refs.compModel.view(this.formData);
}
}, 200)
},
}
}
</script>