全局处理后端接口返回字段undefined或为null

文章介绍了在Vue中如何全局处理可能存在的undefined和null值,通过定义一个原型方法$praseStrEmpty,将空值转换为特定字符串。当数据结构层级深入,如constructionTimeA.constructionTimeB可能为null时,直接调用该方法会导致页面卡死。解决办法是在访问深层属性前先检查父级是否存在。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.main.js

Vue.prototype.$praseStrEmpty = function(str) {
  if (typeof str === 'undefined' || str === null) {
      return "-";
  }
  return str;
}

2.DOM

<div>{{$praseStrEmpty(需要转换的字符:如item.str)}}</div>

3.Js里面调用 

var newStr = this.$praseStrEmpty(str)

但是如过数据结构多层 在中间为null 该如何处理?

//数据结构

// 1.正常数据结构是没问题的
constructionTimeA:{
    constructionTimeB:{
        constructionTimeC:'2023-7-26 09:40:43'
    }
}

<span>{{$praseStrEmpty(constructionTimeA.constructionTimeB.constructionTimeC)}}</span>


// 2.如果constructionTimeB为null 该如何处理呢?
constructionTimeA:{
    constructionTimeB:null
}

<span>{{$praseStrEmpty(constructionTimeA.constructionTimeB.constructionTimeC)}}</span> //页面卡死

 Vue全局处理undefined和null转为空白字符串_偶然路过的吃瓜群众的博客-CSDN博客

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值