以下是一个ext.js子组件之间通信的例子:

假设有两个子组件:一个是“表格”组件,另一个是“过滤器”组件。表格组件显示数据列表,过滤器组件允许用户筛选列表中的数据。

当用户在过滤器组件中进行筛选时,需要通知表格组件更新显示的数据。为了实现这一点,可以在过滤器组件中添加以下代码:

Ext.define('MyApp.view.Filter', {
  extend: 'Ext.panel.Panel',
  alias: 'widget.filter',

  // ...

  // 在过滤器组件中添加一个事件处理程序
  listeners: {
    filterChanged: function(value) {
      // 通知表格组件更新数据
      this.fireEvent('dataChanged', value);
    }
  },

  // ...
});

在表格组件中,也需要添加一个事件处理程序,以便在收到过滤器组件的通知时更新显示的数据:

Ext.define('MyApp.view.Grid', {
  extend: 'Ext.grid.Panel',
  alias: 'widget.grid',

  // ...

  // 在表格组件中添加一个事件处理程序
  listeners: {
    dataChanged: function(value) {
      // 更新显示的数据
      this.getStore().load({
        params: {
          filter: value
        }
      });
    }
  },

  // ...
});

这样,当用户在过滤器组件中进行筛选时,过滤器组件会触发“filterChanged”事件,并将筛选条件作为参数传递给事件处理程序。事件处理程序会触发“dataChanged”事件,并将筛选条件作为参数传递给表格组件。表格组件会在收到通知后更新显示的数据。

能给出extjs子组件之间通信的例子吗

原文地址: https://www.cveoy.top/t/topic/LVz 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录