Wie zu prüfen, wurde "ID" -Feld des Modells von ExtJs (6) hinzugefügt und generiert oder es existiert tatsächlich am Back-End?Prüfung wurde ExtJs-Modell-ID generiert oder nicht
Ich bin mit Gittern und json Speicher für verschiedene Daten zu erhalten und erzeugen Spalten für Raster dynamisch wie folgen aus:
store.load(function(records, operation, success) {
if(success)
{
//console.log('Store loaded records',records,store);
if(records.length)
{
var columns = _.map(records[0].data,function(value, key){
return {text:key,dataIndex:key};
});
me.reconfigure(store,columns);
}else{
me.reconfigure(store,[{text:"no records",dataIndex:"no records"}]);
}
}
else
console.log('Store NOT loaded');
});
Und ich will nicht automatisch generierte Feld „id“, angezeigt wird, müssen aber noch zu zeige es an, wenn es "echt" ist.
Ich habe versucht, Modell-Eigenschaft des Speichers mit benutzerdefinierten IDProperty zu definieren - aber es sieht aus wie in diesem Fall nicht funktionieren nur Wirkung hat es verschwunden ist Textpräfix "extModelxxx-" aus generierten ID-Wert, aber es hat immer noch „id“ Name, kein Name, den ich in idProperty angegeben:
{
reference:"dataDisplay",
xtype:"grid",
store:{
type:"json",
proxy:{
type: 'ajax',
url: '',//will be set dynamically
reader: {
type: 'json',
rootProperty: 'value'
},
},
model: Ext.create("Ext.data.Model",{
//fields:["extJsAutoId"],//no effect
idProperty:"extJsAutoId",//null,//null does not work too
}),
},
columns: [],
listeners:{ .......
Nur so kann ich jetzt sehen, ist json von mir zu laden und dann Array-Speicher verwenden.
Ich habe Geige für diese Frage: https://fiddle.sencha.com/#view/editor&fiddle/1rj5
und wie Sie auf dem Screenshot siehe unten - "Phantom" Eigenschaft ist immer falsch, so dass es hier helfen kippt:
ich Check Phantom prop versucht, aber es ist immer falsch, war egal ‚id‘ Feld erzeugt wird, oder es wurde vom Server empfangen. –
schauen Sie bitte hier: https://fiddle.sencha.com/#view/editor&fiddle/1rj5 wie Sie sehen in der Konsole in beiden Fällen Phantom == false –
Oh, kommen sie von einer Remote-Quelle ohne eine ID? –