前端解决后端接口返回数组类型数据为空的报错

勤奋不是嘴上说说而已,而是实际的行动,在勤奋的苦度中持之以恒,永不退却。业精于勤,荒于嬉;行成于思,毁于随。在人生的仕途上,我们毫不迟疑地选择勤奋,她是几乎于世界上一切成就的催产婆。只要我们拥着勤奋去思考,拥着勤奋的手去耕耘,用抱勤奋的心去对待工作,浪迹红尘而坚韧不拔,那么,我们的生命就会绽放火花,让人生的时光更加的闪亮而精彩。

导读:本篇文章讲解 前端解决后端接口返回数组类型数据为空的报错,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

问题:
开发过程中,我们可能会取接口返回的数组数据的第一项,进行页面渲染。当某一用户的该数据为空时,就会出现未定义的报错。
如下:在这里插入图片描述

<script>
export default {
	data() {
		return {
			dealItem:{}
		};
	},
	methods:{
		getPersonInfo(){
			this.sendRequest({ // 获取待办数据
			  url : `flow/act/flowTask/qureyHandleTasks`,
			  method : "GET",
			  data : {
					userId:userId,
					taskName:'入库',
					processDefinitionId:'sample:1:35016'
				},
			  hideLoading : true,
			  success: (res) => {
					if(res.code === 0){
						this.dealItem = res.data.datas[0]
						this.judgeState()
					}
			  }
			})
		},
		judgeState(){
			if(this.dealItem.progress === 100){
				this.state = true
				this.dealItem.stateContent = '已通过'
			}else{
				this.state = false
				this.dealItem.stateContent = '待通过'
			}
		}
	},
	beforeMount(){
		this.getPersonInfo()
	}
}
</script>

报错:
在这里插入图片描述
解决:
1.给定默认值;
2.判断是否为空,为空时使用给定的默认值;

<script>
export default {
	data() {
		return {
			dealItem:{
				sampleName: "无待办",
				stateContent: "无待办",
				progress:100,
				taskName: "无待办"
			}
		};
	},
	methods:{
		getPersonInfo(){
			this.sendRequest({ // 获取待办数据
			  url : `flow/act/flowTask/qureyHandleTasks`,
			  method : "GET",
			  data : {
					userId:userId,
					taskName:'入库',
					processDefinitionId:'sample:1:35016'
				},
			  hideLoading : true,
			  success: (res) => {
					if(res.code === 0){
						if(res.data.datas.length === 0){
							return
						}else{
							this.dealItem = res.data.datas[0]
							this.judgeState()
						}
					}
			  }
			})
		},
		judgeState(){
			if(this.dealItem.progress === 100){
				this.state = true
				this.dealItem.stateContent = '已通过'
			}else{
				this.state = false
				this.dealItem.stateContent = '待通过'
			}
		}
	},
	beforeMount(){
		this.getPersonInfo()
	}
}
</script>

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/141460.html

(0)
飞熊的头像飞熊bm

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!