vue后台传来数据多选和单选混在一起如何利用elementul处理

后台发过来的数据是一个数组对象,每个对象内有题目和选项。还区分了单选题和多选题。
我想问,如何通过这个单选多选的字段判断来达到让单选题的只能单选,多选的只能多选。我试过了把radio和checkbox放在一起用v-if判断,但是一直显示不出来,找个思路。

这种建议利用vue的组件概念~
如果用if,下次加了其他题型会不够灵活,拆分组件分别封装,也便于后续扩展维护

  1. 将单选题和多选题先封装成单独的组件如 <Radio />以及<Checkbox />
  2. 利用v-for遍历array 循环内置组件 components
  3. 使用该组件的属性is来指定渲染的组件,比如is为Radio时会渲染Radio组件,再传入data用于组件内数据使用,这就是父子组件通信的内容了

最终大概如下

<div v-for="item in arr" :key="item.id">
    <component :is="item.type" :data="item" />
</div>

P.S. 需要注意vue2和vue3 的component组件的is,使用方式有差异

参考文档
https://v3.cn.vuejs.org/api/built-in-components.html#component

如有帮助请采纳回答谢谢~

你说的这种是可行的,v-for遍历,v-if判断