gpt4 book ai didi

vue.js - Vue3动态渲染

转载 作者:行者123 更新时间:2023-12-02 18:15:31 25 4
gpt4 key购买 nike

我有一个组件列表,我想从外部为它们设置一个配置,

例如:

 const myConfig = [
{
name: 'example',
renderer: () => (<button @click="clickHanlder">Click me!</button>)
},
...
];

对于我的组件,我想使用 myConfig ,如下所示:

  <template>
<div class="example">
<template v-for="(item, index) in myConfig" :key="index">
My Button:
<div class="example-2">{{ item.renderer() }}</div>
</template>
</div>
</template>

请注意,我不想使用slots

我该怎么做?

最佳答案

您可以通过使用 h 渲染函数来实现这一点,如以下示例所示:

<template v-for="(item, index) in myConfig" :key="index">
My Button:
<div class="example-2">
<component :is="item.renderer" />
</div>
</template>
<script setup lang="ts">

import { h } from 'vue';

const myConfig = [
{
name: 'example',
renderer: h('button', {

onClick:clickHanlder

},'Click me !'),
},

];

function clickHanlder(){
console.log('click btn');
}

</script>

关于vue.js - Vue3动态渲染,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71639602/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com