以下案例:我有一个 API 输出我的页面的所有内容,以及它的结构等(为了更好地理解,成像一个包含页面构建器的 CMS,作者可以通过拖放将组件放置到生成页面内容,由该api传递到前端)。
api 输出的结构类似于:
{content: [
{component: hero, content: {...} },
{component: form, content: {...} },
...
]}
因此,要生成相关内容,我会考虑使用动态组件,例如:
<template v-for="item in content">
<component :is="item.component" />
</template>
但是,这样做我会面临一个问题,即我必须以某种方式将属性数据添加到我的组件中,这(据我所知)在 Vue 文档中没有描述。所以现在我想知道如何将道具传递给具有完全不同道具的动态组件(英雄可能有一个图像,表单可能有输入占位符等等) - 任何想法?