存储从服务器获取 JSON 形式的回复。在某些情况下,字段 card_number 为空。我的任务是当字段 card_number 为空时隐藏列。现在此列显示并显示空值。我可以更改任何代码部分,包括服务器响应。
模型:
Ext.define('Guard.model.Report', {
extend : 'Ext.data.Model',
fields : [ 'first_name', 'last_name', 'card_number'] });
看法:
Ext.define('Guard.view.report.Export', {
extend: 'Ext.grid.Panel',
alias : 'widget.exportreport',
uses: [
'Ext.ux.exporter.Exporter'
],
initComponent: function() {
this.store = 'ReportCreate';
this.dockedItems = [{
xtype: 'toolbar',
dock: 'top',
items: [ {
xtype: 'button',
text : _msg_btn_load_reports_csv,
id : 'loadcsv',
iconCls : 'loadcsvIcon'
}]
}];
this.columns = [ {
text : _msg_tbl_head_fname,
align: 'center',
dataIndex : 'first_name',
flex : 1,
renderer: function(value) {
if(!value) {
return _msg_grid_default_unknown;
}
return value;
}
},{
text : _msg_tbl_head_lname,
align: 'center',
dataIndex : 'last_name',
flex : 1,
renderer: function(value) {
if(!value) {
return _msg_grid_default_unknown;
}
return value;
}
},{
text : _msg_tbl_head_card_number,
align: 'center',
dataIndex : 'card_number',
flex : 1
}];
this.callParent(arguments);
}});
店铺:
Ext.define('Guard.store.ReportCreate', {
extend: 'Ext.data.Store',
model: 'Guard.model.Report',
proxy: {
type: 'ajax',
url: 'php/reports.php',
reader: {
type: 'json',
root: 'reportCreate',
successProperty: 'success'
}
}
});