ExtJs(6)によって追加され生成されたモデルの "id"フィールドがチェックされたかどうか、または実際にバックエンドに存在しますか?ExtJsモデルIDが生成されたかどうかチェック
私は、さまざまなデータを取得するためのグリッドとJSONストアを使用して、動的に次のようにグリッドの列を生成しています:
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');
});
そして私は、自動生成されたフィールド「ID」を表示したいのですが、まだする必要はありませんもしそれが本当なら、それを表示してください。
カスタムidPropertyを使用して店舗のモデルプロパティを定義しようとしましたが、この場合は動作しません。 生成されたID値からテキストプレフィックス "extModelxxx-"が消えているだけですが、 「ID」の名前は、私がidPropertyで指定した名前ではない:私は今見る
{
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:{ .......
唯一の方法は、自分でJSONをロードし、アレイ・ストアを使用することです。 https://fiddle.sencha.com/#view/editor&fiddle/1rj5
、あなたは下のスクリーンショットで見るように - それはここに助ける傾けるので、「ファントム」プロパティは、常にfalseです:
私はこの質問のためのフィドルを作成
をどんなにが発生した「ID」フィールドだったか、それがサーバから受信された、私がチェックファントム小道具を試してみましたが、それは常にfalseです。 –
ここをクリックしてください: https://fiddle.sencha.com/#view/editor&fiddle/1rj5 コンソールで両方の場合に表示されているようにファントム== false –
ああ、彼らはIDなしでリモートソースから来ていますか? –