vue中三目运算符结合find函数做逻辑判断

map find 三目运算符

需求

  • 在做一个表格的展示时,后端返回的数据是code,不是具体的名称,如下图所示
    image

  • 所以这里我准备用一个简单的三目运算判断表格展示内容

    • 首先,对应code和任务名称为:
    codetask
    1黑白名单
    2入侵检测
    3徘徊检测
    4接打手机
    • 展示结果为
      image

vue中具体步骤:

  • 在data中定义字段headerData,里面是我们要展示的表格行名称;字段tableData,存放返回的数据处理后的结果,用于模板中展示。
     headerData:[
             {
               name:'摄像头',
               width:40
             },
             {
               name:'黑白名单',
             },{
               name:'入侵检测',
             },
             {
               name:'徘徊检测',
             },{
               name:'接打手机',
             }
           ],
     tableData:[],
    
  • 在methods中axios请求数据,在拿到的结果中,map遍历每一个元素,返回处理后的结果 ,推到tableData中。
    this.axios.get("url").then((res) => {
            res.data.data.map((item) => {
              return this.tableData.push({
                name: item.camera_name,
                //intercept,invade,wander,mobile分别对应表头四个任务名
                intercept:item.codes.find((item) =>{return item == 1})?"是":"否",
                invade:item.codes.find((item) =>{return item == 2})?"是":"否",
                wander:item.codes.find((item) =>{return item == 3})?"是":"否",
                mobile:item.codes.find((item) =>{return item == 10})?"是":"否"
              })
            })
            console.log(this.tableData);
          }).catch((error) => {
            console.log(error);
          })
    
  • 注意:
    • find()函数不改变原数组,会执行回调函数返回一个布尔值,参数是数组的每一个元素,遍历数组如果有符合条件的结果,函数返回true,否则返回false。
    • 三目运算符使用场景很灵活,有时可以代替循环来处理数据。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值