vue改变循环遍历后的数据

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/liuxin_1991/article/details/81538282
<dd class="clearfix" v-for="(item,index) in tableDataList" :class="index%2 != 0 ? 'dd-bg' : ''">
   <div class="indexItem indexItem3 tal" title=""><span>{{item.status}}{{countTotal}}</span></div>
</dd>
<script type="text/ecmascript-6">
import Vue from 'vue'
import axios from 'axios'
export default {
  data(){
    return{
      tableDataList:[],//定义列表数据信息
    }
  },
  mounted(){
  //获取列表数据信息
  axios.get('url',{
    withCredentials: true
  })
    .then((res) => {
//        console.log(res);
      let tableData = res.data.data;
      this.tableDataList = tableData.table_list;
    })
    .catch((error) => {
      console.log(error)
    })
  },
  computed:{
    //将状态数字转换为对应的文字解释
     countTotal() {
       for (let i = 0; i < this.tableDataList.length; i++) {
         if (this.tableDataList[i].status === 0) {
           this.tableDataList[i].status = '文字说明0'
         } else if (this.tableDataList[i].status === 1) {
           this.tableDataList[i].status = '文字说明1'
         } else if (this.tableDataList[i].status === 2) {
           this.tableDataList[i].status = '文字说明2'
         } else if (this.tableDataList[i].status === 3) {
           this.tableDataList[i].status = '文字说明3'
         } else if (this.tableDataList[i].status === 4) {
           this.tableDataList[i].status = '文字说明4'
         } else if (this.tableDataList[i].status === 5) {
           this.tableDataList[i].status = '文字说明5'
         }
         Vue.set(this.tableDataList,i,this.tableDataList[i])
       }
     }
  }
}
</script>

注意:Vue.set(this.tableDataList,i,this.tableDataList[i]) 这段代码必须写,否则数据不会更新

猜你喜欢

转载自blog.csdn.net/liuxin_1991/article/details/81538282