刚才在使用vue组件的Table表格时,遇到了后端返回的数组,数组包含对象,对象中包含一个为null的对象属性值,然后呈现在网页上就会发现那一列是空白的,显得不好看,然后我想的是把那一列只要是null的全部改为零,这样至少显得好看一点儿。
首先我是想着直接在prop属性上动态绑定,然后使用三元运算符进行判断。就像下面这样
<el-table-column :prop="`${leaveearly==null?0:leaveearly}`" label="xxxx" align="center"></el-table-column>
但不知为何,这种方法就是没有达到我想要的结果,然后这种做法果断放弃(如果哪位知道原因的话,麻烦教我一下)。
既然在Table表格元素上不能下功夫,那就想办法直接在返回的原始数据上进行修改。
其实就是在数组中的对象再对对象中的属性值进行修改。
注意紧接着这个是错误写法。If里边的判断条件这样写是错误的,我以为它的返回值null的话会执行if里边的语句。但是我是想当然了,不应该这样理解。
for (let index = 0; index < this.tableData.length; index++) {if (this.tableData[index].leaveearly) {this.tableData[index].leaveearly="0" }}
然后我就把判断条件写成了这样。
for (let index = 0; index < this.tableData.length; index++) {if (this.tableData[index].leaveearly==null) {this.tableData[index].leaveearly="0" }}
其实就是在原来基础上把等于null加上去了。然后就成功达成目的。
写这篇博客,一是为了和大家分享,二其实也为了自己能够增强记忆,避免以后再犯同样的错误。
这只是我单独的一种解法。我想应该方法还有很多,请各位各抒己见。