Я думаю, вы пытаетесь сделать слишком много в своей разметке.Сохраняйте минимальную обработку данных в разметке.
Поэтому я бы посоветовал использовать фильтр для возврата массива с удаленными дубликатами.
Разметка
<div v-for="(filteredArray(arr), index) in info" :key="index" class="form-check">
...
</div>
Сценарий
Добавьте отфильтрованное свойство в ваш экземпляр vue.js.
filters: {
filteredArray: function (array) {
let data = {}
this.info.forEach(i=>{
Object.assign(data,i.category_data)
})
return data;
}
}