如何在Extjs CMD应用程序中使用ux组件?
我想用我的观点。 目前我将gridPanel设置为如何在Extjs CMD应用程序中使用ux组件?,extjs,extjs5,sencha-cmd,Extjs,Extjs5,Sencha Cmd,我想用我的观点。 目前我将gridPanel设置为 xtype:'app-main', controller: 'main', viewModel: { type: 'main' }, layout: 'absolute', autoScroll : true, resizable:true, items: [ { xtype: 'gridpanel', x
xtype:'app-main',
controller: 'main',
viewModel: {
type: 'main'
},
layout: 'absolute',
autoScroll : true,
resizable:true,
items: [
{
xtype: 'gridpanel',
x: 10,
y: 10,
itemId: 'myGrid',
plugins: [rowEditing],
reference: 'reqGridpanel',
listeners: {
'selectionchange': function(view, records) {
this.down('#deleteRecord').setDisabled(!records.length);
}
},
我想在我的网格面板中使用liveSearchGridPanel或Live Search功能,有人能告诉我如何使用它吗?
就像目前我正在设置“xtype”属性以使用组件一样,我如何使用ux组件
我见过这个问题,但我不能理解答案
这是我的目录结构
请帮忙。LiveSearchGridPanel没有xtype。您必须通过Ext.create(“Ext.ux.LiveSearchGridPanel”)创建它 签出,在那里可以看到如何创建LiveSearchGridPanel 如果您使用sencha cmd应用程序结构,它应该是开箱即用的。否则,您必须通过手动指定ux文件夹的路径。如果您不使用sencha cmd应用程序结构,我建议您创建一个文件夹“ux”,并将您需要的所有sencha ux类复制到该文件夹中。您可以在ext/src/ux中找到sencha ux类 直接创建LiveSearchGridPanel的示例
{
xtype : 'app-main',
controller : 'main',
viewModel : {
type : 'main'
},
layout : 'absolute',
autoScroll : true,
resizable : true,
items : [
Ext.create("Ext.ux.LiveSearchGridPanel", {
x : 10,
y : 10,
itemId : 'myGrid',
plugins : [rowEditing],
reference : 'reqGridpanel',
listeners : {
'selectionchange' : function (view, records) {
this.down('#deleteRecord').setDisabled(!records.length);
}
}
})
]
}
您需要做的是在app/view/grid文件夹中创建一个新视图,如MyApp.view.grid.LiveSearchGrid,然后定义如下:
Ext.define("MyApp.view.grid.LiveSearchGrid", {
extends: 'Ext.ux.LiveSearchGridPanel',
xtype: 'MyLiveSearchGrid'
});
在您的组件中:
{
xtype : 'app-main',
controller : 'main',
viewModel : {
type : 'main'
},
layout : 'absolute',
autoScroll : true,
resizable : true,
x : 10,
y : 10,
items : [{
xtype: 'MyLiveSearchGrid',
itemId : 'myGrid',
plugins : [rowEditing],
reference : 'reqGridpanel',
listeners : {
scope: this,
selectionchange : function (view, records) {
this.down('#deleteRecord').setDisabled(!records.length);
}
}
}]
}
非常重要的是,如果您使用Sencha CMD(我希望您这样做),请不要忘记将“ux”包放在需求中,否则它将不起作用。我理解您的观点,但您能告诉我,为了实现这一点,我必须在代码中做哪些更改吗?请发布您的文件夹结构,然后我可以给你一个例子。我已经在我的问题中发布了我的目录结构。你使用的是默认的sencha cmd应用程序结构。我添加了一个代码示例。感谢它正在工作,尽管我面临另一个错误,即未捕获的TypeError:无法读取未定义的属性“isBufferedStore”,该属性是由于存储而产生的,尽管我已在应用程序的启动函数中注册了它。在LiveSearch事件之前,它工作得很好,你知道吗?