使用Antd弹框时,出现了二次点击显示弹框,但无法正确传参和进行组件初始化的问题。

我们需要在这段代码中

<a-modal
v-model:visible="showTemplateDetail"
:footer="null"
title="模板详情"
:width="800"
>
<template-detail :templateId="item.id"></template-detail>
</a-modal>

加上v-if,变成

<a-modal
v-model:visible="showTemplateDetail"
v-if="showTemplateDetail"
:footer="null"
title="模板详情"
:width="800"
>
<template-detail :templateId="item.id"></template-detail>
</a-modal>

即可。这样进入组件后会再次调用setup和mounted。