我需要一个' id'在我的架构中的列,我很乐意使用行标题值,主要是为了避免实现“generate_id”和#39; generate_id'功能。
我的数据模式中有5个字段,但是,我只定义了4列,希望以某种方式将行标题值映射到模式' id'属性,以及避免创建,隐藏和呈现“id”的属性。柱。
我尝试使用 this.hot.getData()[row] .id = this.hot.getRowHeader(row)
但是 getData()返回的对象没有' id' coumn。
有什么想法吗?
const hotConfig = {
dataSchema: {id: null, name: null, sequence: null, bpLength: null, seqType: null},
colHeaders: [NAME_COL, SEQUENCE_COL, BPLENGTH_COL, TYPE_COL],
columns: [
{
data: 'name',
validator: nameFieldValidator,
allowInvalid: false
},
{
data: 'sequence',
validator: sequecnceFieldValidator,
allowInvalid: true,
width: 1000,
maxLength: 3
},
{
data: 'bpLength',
readOnly: true
},
{
data: 'seqType',
editor: 'select',
selectOptions: [DNA, AMINO_ACID, UNKNOWN],
width: 100,
readOnly: true,
strict: true
}
],
rowHeaders: true,
};
答案 0 :(得分:0)
看起来这就是诀窍:
{
this.hot.addHook('afterChange', this.onCellChanged.bind(this));
:
onCellValidated(isValid, value, row, prop, source) {
this.hot.getSourceDataAtRow(row)[ID_COL_IDX] = this.hot.getRowHeader(row);
}
}