在进行项目开发的时候因为在一个标签上同时使用了v-for和v-if两个指令导致的报错。

报错代码如下:
<el-input
type="textarea"
:autosize="{ minRows: 2, maxRows: 8}"
v-for="Oitem in Object.keys(cItem)"
:key="Oitem"
v-if="Oitem !== 'title'"
v-model="cItem[Oitem]">
</el-input>
提示错误:The 'undefined' variable inside 'v-for' directive should be replaced with a computed property that returns filtered array instead. You should not mix 'v-for' with 'v-if'
原因:v-for 的优先级比 v-if 的高,所以每次渲染时都会先循环再进条件判断,而又因为 v-if 会根据条件为 true 或 false来决定渲染与否的,所以如果将 v-if 和 v-for一起使用时会特别消耗性能,如果有语法检查,则会报语法的错误。
1. 将 v-for 放在外层嵌套 template (页面渲染不生成 DOM节点) ,然后在内部进行v-if 判断
<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>
注意点:key值写在包裹的元素中
2. 如果条件出现在循环内部,不得不放在一起,可通过计算属性computed 提前过滤掉那些不需要显示的项
<template>
<div>
<div v-for="(user,index) in activeUsers" :key="user.index" >{{ user.name }}</div>
</div>
</template>
<script>
export default {
name:'A',
data () {
return {
users: [{name: 'aaa',isShow: true}, {name: 'bbb',isShow: false}]
};
},
computed: {//通过计算属性过滤掉列表中不需要显示的项目
activeUsers: function () {
return this.users.filter(function (user) {
return user.isShow;//返回isShow=true的项,添加到activeUsers数组
})
}
}
};
</script>
相关推荐:
“扩写AI”-引领写作革命,开启智能创作新时代,dede seo 标题如何填写
seo网站页面优化包括什么,seo页面优化技术 ,no ai写作
SEO单页网站:助力企业在线营销的一站式解决方案,湖南视频网站优化方式
优化型网站:提升企业竞争力的必备利器,重庆网站推广工作如何
为什么做seo的人很少,为了什么做seo ,ai不负你
ChatGPT的破解版:AI世界的新突破,ai无禁忌
SEO组织:让您的网站流量倍增的秘密武器,seo 绩效标准
SEO部:开启数字化营销新纪元的幕后英雄,株洲营销推广是什么公司
整理文章的AI:提升写作效率的智能助手
SEO有意:如何通过优化策略提升网站排名与流量,天津政府智慧网站建设
内容创作新时代:自动生成文章的AI如何改变写作生态
seo需要做些什么,做seo的 ,超级ai地图
360ai问答-智能时代的全能助手,未来的智慧生活,ai生成白底
云推SEO:让您的网站在激烈竞争中脱颖而出,网站优化公司欢迎来电
为什么越来越多的人选择在知乎发布文章?这里面的机会你可能还没发现!,潍坊关键词排名提升
seo网赚什么意思,网站seo赚钱 ,ai打不开ai
ChatGPT页面无法下拉?禁用浏览器扩展,轻松解决!,imba 1.6 ai
SEO子-为你的网站注入流量的秘密武器,麻城网站网址优化
GPT-3.5免费吗?揭秘AI智能助手的未来与收费模式,ai 美美
文章AI排版,让创作更高效的秘密武器
ChatGPT不能用了?了解这一背后的真相及解决方法,ai恐怖头像
企业如何借助SEO咨询实现精准流量引爆,助力业绩提升,立刻推广的旅游线下营销
二SEO是什么,h二seo三是什么 ,ai手术机
SEO优化排名:让您的网站在搜索引擎中脱颖而出,我ai 达瓦仓决
了解SEO:让你的网站在搜索引擎中脱颖而出的秘密武器,宝山区常见网站优化
AI网页版智能问答,开启智慧沟通新时代,ai梦境档案用不了手柄
ChatGPT无法加载?检查您的网络设置并尝试重启,轻松解决常见问题!,ai招生广告设计
AI免费写文:创作新时代的高效助手
seo需要什么器械,seo需要什么器械才能做 ,长续航ai纯电汽车
SEO优化流程:助力网站快速提升排名的关键策略,1745ai
SEO培训:助力企业实现互联网营销的无限可能,平塘网站优化推广价格
SEO与SEM策略:提升网站流量与品牌曝光的双剑合璧,ai补图
SEO管家:为您的网站保驾护航的智能SEO助手,网站推广作用有哪些类型
英语日记AI生成:轻松提升英语水平的智能助手
在线AI文章:为您打造全新内容创作体验
ChatGPT为什么网址打不开?原因分析与解决方法,文档审核ai
ChatGPT为什么访问不了?全面解析及解决方案,ai首页设计
AI免费生成文章让创作变得轻松自如
什么是SEO金融,seo是做什么的 ,ai中转程序
SEO快速排名实例:如何通过实战技巧提升网站排名,快速突破流量瓶颈,安徽ai跑步机企业
AI缩写文本:助力智能生活的革新力量,ai智能写作生成神器下载
SEO译为:网站排名背后的优化策略,会展中心网站优化
ChatGPT页面无法访问?解决方案,让你轻松摆脱困扰!,ai染发颜色
SEO这种营销方式,改变你网站流量的秘密武器,佛山网站设计建设
SEO主要是为网站引流吗?深入解析SEO的核心价值,AI算算
AI免费试用不需要登录:体验智能科技的魅力,轻松开启未来,华为ai身材
SEO功能:助力网站流量提升与品牌曝光,天津公司网站建设与维护
为什么“未备案域名”会成为互联网行业中的重要问题?,江干区seo优化价格
文章AI指令提升写作效率的智能助手
ChatGPT异常了:人工智能的极限与突破,ai and ethics