vue 中 ,如何优化v-for循环的,控制元素显示隐藏语句?

情景:
数据列表中v-for 循环的 , 一些元素的显示隐藏依赖于数组中的字段 ,切判断的条件比较多,看着页面就不清爽 ,请问这些数据怎么处理,可以优化下呢?

image.png

阅读 5.6k
6 个回答

1.template 标签中,用 slot-scope={row},可以代替 scope.row
2.后面三个按钮的判断条件,可以用一个逻辑来代替:

v-else-if="state >= 50 && (row.type == 1 || (row.type == 2 && hasJudicial == 1) || (row.type !== 2 && row.type !== 1 && row.hasChain))"

看你的按钮 只有icon属性不同 你可以用一个函数来计算出icon字符串

建议封装成计算属性或函数方法。

三、四、五这三个按钮有什么区别吗?为什么要写成三个?最后渲染出来的按钮不是一个样嘛

后面三个按钮除了判断条件没啥区别嘛,为啥 要写三个?
如果是嫌判断条件写在一起太长不美观,封装成一个方法就好啦。
或者计算属性更好,有缓存。

推荐用计算属性或者函数。 模板中写多逻辑判断不说容易出错,某些情况下引用报错可能直接模板渲染不出来。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题