Alterar a cor de fundo da janela pop-up da linha

  Recebi uma nova tarefa hoje, e uma nova dica é necessária nos detalhes do caminho. O número de série é alterado para router_id e, em seguida, o nó atual dos primeiros dados e o próximo nó precisam ser os mesmos, caso contrário, a cor de fundo da lista mudará. O router_id precisa ser exibido continuamente a partir de 1, caso contrário, o prompt para alterar a cor de fundo também será executado. Depois de muito pensar nisso, finalmente terminei com a ajuda dos meus colegas, meu QI é preocupante.

Como obter dados do fundo:

loadDetailData(routerid) {
    
    
          if(!this.url.list){
    
    
            this.$message.error("请设置url.list属性!")
            return
          }
          //加载数据 若传入参数1则加载第一页的内容
          this.ipagination.current = 1;
          var params = Object.assign({
    
    routerId: routerid}, this.isorter);
          params.pageNo = this.ipagination.current;
          params.pageSize = this.ipagination.pageSize;
          this.loading = true;
          getAction(this.url.list, params).then((res) => {
    
    
            if (res.success) {
    
    
              this.dataSource = res.result.records;
              this.ipagination.total = res.result.total;
              // 校验连贯
              let len = this.dataSource.length
              console.log(len)
              for(var i = 0; i< len - 1; i++){
    
    
                if(this.dataSource[i].nextNode !== this.dataSource[i+1].curNode){
    
    
                  // 不连贯
                  console.log( '不连贯,i=' + i);
                  this.$message.warning('路径节点不连贯')
                  break;
                }
              }
            }
            if(res.code===510){
    
    
              this.$message.warning(res.message)
            }
            this.loading = false;
          })
        },

Parte principal de verificação:

// 校验连贯
              let len = this.dataSource.length
              console.log(len)
              for(var i = 0; i< len - 1; i++){
    
    
                if(this.dataSource[i].nextNode !== this.dataSource[i+1].curNode){
    
    
                  // 不连贯
                  console.log( '不连贯,i=' + i);
                  this.$message.warning('路径节点不连贯')
                  break;
                }
              }

i <len-1; é o processamento de limite, dois conteúdos são comparados, como não reduzir em um, isso fará com que o array cruze o limite.
this.dataSource [i] .nextNode é o próximo parâmetro do nó do caminho atual.
this.dataSource [i + 1] .curNode é o parâmetro do nó atual do próximo caminho.
Se for considerado que não é igual, a mensagem será solicitado.

Método de alteração da cor de fundo da tabela :
Adicione a tabela ao atributo: rowClassName = "rowClassName"

<a-table
          ref="table"
          size="middle"
          bordered
          rowKey="id"
          :columns="columns"
          :dataSource="dataSource"
          :pagination="ipagination"
          :loading="loading"
          :rowClassName="rowClassName"
          @change="handleTableChange"
        >
        </a-table>

js:

methods: {
    
    
        rowClassName(record,index){
    
    
			//判定数字连续
            console.log(record)
            let j = index+1;//index从0开始,序号从一开始
            if(record.routerNo != j){
    
    
              return "blue-back";
            }
			//判定站点连续
          if(index>0 && this.dataSource[index-1].nextNode != record.curNode){
    
    
              // console.log('执行到了2')
                return "blue-back";
          }
          // return ""
        },

rowClassName (registro, índice), registro são os dados da linha atual, índice é o
índice subscrito > 0 são os segundos dados, determine se os segundos dados são iguais aos do primeiro nó de dados

CSS :

<style lang="less" scoped>
  /deep/.blue-back {
    
    
    background-color: #ffff00;
  }
</style>

Efeito finalizado: o
Insira a descrição da imagem aqui
nó não é contínuo: o
Insira a descrição da imagem aqui
número de série não é contínuo:
Insira a descrição da imagem aqui
além disso: também é necessário adicionar dois botões para mover para cima e para baixo, aqui os dados de transmissão de fundo foram classificados de acordo com o número de série de grande a pequeno , então o deslocamento do botão tem pouco efeito.

Acho que você gosta

Origin blog.csdn.net/sinat_33940108/article/details/115329533
Recomendado
Clasificación