我必须使用Petite-Vue有条件地呈现列表中的元素.但是,将具有v-if属性的<li>
标记放置在具有v-for
属性的<template>
标记中会生成以下错误:
UnauCapt(In Promise)TypeError:无法读取Null的属性(读取""InsertBepret"")
因此,我需要的这段代码不起作用:
<ul>
<template v-for="item in ['a', 'b', 'c']">
<li v-if="['a', 'b'].includes(item)">{{ item }} is included in ['a', b'']<p></p></li>
<li v-if="['a', 'b'].includes(item)"><hr/></li>
<li v-if="item === 'c'"><p> item is c</p></li>
</template>
</ul>
但是,如果有条件呈现的元素不是放在<template>
中,而是放在具有v-for
属性的<div>
标记中,那么它就可以工作.因此,这是可行的:
<div>
<template v-for="item in ['a', 'b', 'c']">
<p v-if="['a', 'b'].includes(item)">{{ item }} is included in ['a', b'']</p>
<hr v-if="['a', 'b'].includes(item)" />
<p v-if="item === 'c'"> item is c</p>
</template>
</div>
有没有办法使用Vue根据当前通过数组或对象的迭代,有条件地呈现<li>
个元素?