Motivo do erro:
quando v-if e v-for são usados juntos, v-for tem uma prioridade mais alta do que v-if, o que significa que v-if será executado repetidamente em cada loop v-for.
Portanto, não é recomendado usar v-if e v-for ao mesmo tempo
Método recomendado:
<ul v-if="shouldShowUsers">
<li
v-for="user in users"
:key="user.id"
>
{
{ user.name }}
</li>
</ul>
Coloque-o no elemento externo ou envolva-o com a tag template (template é uma nova tag de html5, sem significado especial)
<template v-for="Oitem in Object.keys(cItem)">
<el-input
type="textarea"
:autosize="{ minRows: 2, maxRows: 8}"
:key="Oitem"
v-if="Oitem !== 'title'"
v-model="cItem[Oitem]">
</el-input>
</template>
Nota: o valor da chave está no elemento encapsulado
Quando eles estão no mesmo nó, v-for tem uma prioridade mais alta do que v-if, o que significa que v-if será executado repetidamente em cada loop v-for. Este mecanismo de prioridade é muito útil quando você deseja renderizar nós para apenas alguns itens, da seguinte maneira:
<li v-for="todo in todos" v-if="!todo.isComplete">
{
{ todo }}
</li>
O código acima passa apenas tarefas não concluídas.
E se seu objetivo é pular condicionalmente a execução do loop, use os dois primeiros métodos.