只需要給彈窗加v-if即可解決,因為用v-if將子組件包裹起來,v-if=false時可以將子組件銷毀掉,再次調用時重新渲染
<el-dialog
title=""
width="1200px"
:visible.sync="showPreviewDialog"
v-if="showPreviewDialog"
>
<preview-project ></preview-project>
</el-dialog>