如何根据row或者rowid判断data中数据是否存在
场景描述
data中的数据进行整行复制等时,需要根据行或者行id判断数据是否存在
实现思路
通过数据集组件提供的API实现
实现步骤
1.通过行判断
var data = this.comp("selectData");
var row = data.getCurrentRow();
if(data.exist(row)){
alert("数据已存在!");
}
});
2.通过行id判断
方案一、通过data提供的existID方法
var selectData = this.comp("selectData");
var dialogData = this.comp("dialogData");
dialogData.each(function(option){
var row = option.row;
var rowid = option.data.getRowID(row);
if(!selectData.existID(rowid)){
selectData.newData();
var newRow = selectData.getCurrentRow();
Object.assign(newRow,row);
}
});
方案二、判断是否为空null!=data.getRowByID(id);
var selectData = this.comp("selectData");
var dialogData = this.comp("dialogData");
dialogData.each(function(option){
var row = option.row;
var rowid = option.data.getRowID(row);
if(null!=selectData.getRowByID(rowid)){
selectData.newData();
var newRow = selectData.getCurrentRow();
Object.assign(newRow,row);
}
});