|
@@ -8,6 +8,14 @@ const handsonUtils = {
|
|
|
* @return array 经过排序后或者经过搜索后的数组
|
|
|
*/
|
|
|
getParam: function(changeData, source, hot, trimmedArr) {
|
|
|
+ function arrayUnique(arr, name){ //去重
|
|
|
+ var hash = {};
|
|
|
+ return arr.reduce(function(item, next) {
|
|
|
+ hash[next[name]] ? '' : hash[next[name]] = true && item.push(next);
|
|
|
+ return item;
|
|
|
+ }, []);
|
|
|
+ }
|
|
|
+ let newData = arrayUnique(changeData, 0)
|
|
|
let param = "";
|
|
|
//被筛选过后的数组
|
|
|
// let trimmedArr = this.trimmedRows();
|
|
@@ -16,21 +24,21 @@ const handsonUtils = {
|
|
|
if (trimmedArr.length && isSort) {
|
|
|
//排序后的数组
|
|
|
let sortArr = hot.getPlugin("columnSorting").rowsMapper.__arrayMap;
|
|
|
- param = changeData.map(item => {
|
|
|
+ param = newData.map(item => {
|
|
|
return hot.getSourceDataAtRow(trimmedArr[sortArr[item[0]]]);
|
|
|
});
|
|
|
} else if (isSort) {
|
|
|
//排序后的数组
|
|
|
let sortArr = hot.getPlugin("columnSorting").rowsMapper.__arrayMap;
|
|
|
- param = changeData.map(item => {
|
|
|
+ param = newData.map(item => {
|
|
|
return hot.getSourceDataAtRow(sortArr[item[0]]);
|
|
|
});
|
|
|
} else if (trimmedArr.length) {
|
|
|
- param = changeData.map(item => {
|
|
|
+ param = newData.map(item => {
|
|
|
return hot.getSourceDataAtRow(trimmedArr[item[0]]);
|
|
|
});
|
|
|
} else {
|
|
|
- param = changeData.map(item => {
|
|
|
+ param = newData.map(item => {
|
|
|
return hot.getSourceDataAtRow(item[0]);
|
|
|
});
|
|
|
}
|