如何在Extjs组合框中将布尔值转换为是或否

如何在Extjs组合框中将布尔值转换为是或否,extjs,combobox,boolean,Extjs,Combobox,Boolean,我试图在Extjs组合框中显示yes或no值,而不是true或false。我不确定使用哪种侦听器,也不确定是否有其他方法。感谢您的帮助创建一个静态存储,如下所示: Ext.define('MyYesNoStore', { extend: 'Ext.data.Store', fields: [ 'id', 'name' ], data: [ { id: false, name: 'No' }, { id: true, name: 'Yes' } ] }) 然后在你

我试图在Extjs组合框中显示yes或no值,而不是true或false。我不确定使用哪种侦听器,也不确定是否有其他方法。感谢您的帮助

创建一个静态存储,如下所示:

Ext.define('MyYesNoStore', {
  extend: 'Ext.data.Store',
  fields: [ 'id', 'name' ],
  data: [
    { id: false, name: 'No' },
    { id: true, name: 'Yes' }
  ]
})

然后在你的组合框中使用这个商店。请注意,如果要在网格中执行类似操作,则布尔列中有特殊属性“trueText”、“falseText”。

请确保在组合框中指定显示字段和值字段属性

组合+是/否存储的完整工作示例

{
   xtype: 'combo',
   valueField: 'id',
   displayField: 'name',
   store: new Ext.data.Store({
      fields: [ 'id', 'name' ],
      data: [
             { id: false, name: 'No' },
             { id: true, name: 'Yes' }
           ]
   })
},

如果要在网格中使用它,还可以指定渲染器:

 renderer: function (value) {
     return value == false ? 'No' : 'Yes';
 }