Как получить индекс выбранных строк в элементе таблицы в iview vue? - PullRequest
0 голосов
/ 15 ноября 2018

Как получить индекс выбранных строк в элементе таблицы в iview vue? Например, элемент таблицы выглядит следующим образом:

<Table ref="selection" :columns="columns4" :data="data1" @on-selection-change="updateSelectedNumber"></Table>

Ответы [ 2 ]

0 голосов
/ 06 августа 2019

В вашем HTML-шаблоне как <Table :columns="myColumns" :data="myData" /> ничего не делать.

В вашем <script>, когда вы нажимаете на строку, вы можете получить объект params для своей функции со структурой данных, подобной этой:

{
  row : {...}
  index : 0 // or maybe the actual row index,
  column: {...}
}

rowClicked(params.index) {
  let rowIndex = params.index;
}
0 голосов
/ 15 ноября 2018

GET элемент данных строки нажал. Чтобы получить индекс клика по элементу, просто щелкните нужную строку, а не над флажком, над элементом, который не является блоком, но находится на той же строке.

добавить тег

methods: {
 valueRowClick(value)
 console.log(value)
}
result:
position: 0 -> Object 
position 1: -> Index item clicked 2

При выборе элемента в соответствии с документацией выбрасывается значение выбранных элементов. ПОЛУЧИТЬ элемент данных выбрать

<table @on-select="nameFunction">
methods: {
 nameFunction (value) {
 console.log(value)
}
}

УДАЛИТЬ ПРИМЕР ПУНКТА: добавить этот тег TABLE

<table @on-selection-change="valueItemsSelected"></table>
methods: {
    valueItemsSelected(value){
      if(value.length > 0){
       for(let y = 0, max1 = value.length; y < max1; y ++){
         for(let i = 0, max = this.data1.length; i < max; i++){
          if(value[y] === this.data1[i])    {
           this.data1.splice(i, 1)
          }
         }
        }
      }
    }
  },
...