2016-07-04 13 views
0

Ich brauche eine 'ID' Spalte in meinem Schema und ich würde gerne den Zeilenkopfwert für diese Angelegenheit verwenden, hauptsächlich um die Implementierung einer 'generating_id' Funktionalität zu vermeiden.
Ich habe 5 Felder in meinem Datenschema, jedoch habe ich nur 4 Spalten definiert, in der Hoffnung, den Zeilenkopfwert irgendwie der 'ID'-Eigenschaft des Schemas zuzuordnen und dadurch das Erstellen, Verstecken und Rendern der' ID 'zu vermeiden. Säule. ich versuchte this.hot.getData() [row] .id = this.hot.getRowHeader (row)
aber das Objekt, das getData() kehrt nicht mit der 'id' coumn hat.HandsOnTable - So verwenden Sie den Zeilenkopf im Datenschema

Irgendwelche Ideen?

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, 
    }; 

Antwort

0

scheint, wie dies der Trick:

{ 

    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); 

    } 
}