程序员人生 网站导航

【翻译】Ext JS最新技巧――2014-10-30

栏目:互联网时间:2014-11-10 08:18:09

原文:Top Support Tips

Greg Barry:Ext JS 5的ExtraParams

Ext JS 4允许用户直接将extraParams添加到1个链接,类似以下代码:

Ext.Ajax.extraParams = { foo: "bar" };

由于Ext JS5对数据包进行了修改,该方法就不再可行了。现在,需要使用 setExtraParams和getExtraParams方法来为Ext.data.Connection提供参数,例如:

Ext.Ajax.setExtraParams({ foo: "bar" });

有关这些方法的详细信息,请浏览以下资源:Ext.data.Connection

你可以通过查看 Fiddle的标题中网络标签页中的“列表”来查看该功能的演示。

Seth Lemmons:Ext JS 4中的动态字段和网格列

Ext JS 5的数据包变化让灵活的数据更容易于工作了。但是,如果你正在使用Ext JS 4,那要实现类似的灵活性,就需要使用几个不为人知的框架块来实现。

开发人员1直以来都没法控制从http://www.wfuyu.com/server/返回到利用程序的数据字段有哪些。如果你是工作于数据会从多个数据源返回数据的环境,这极可能是1个常见的挑战。数据签名可能频繁产生改变,而且数据具有者不会去通知数据签名已改变。用户常常静态的设置模型(model)/存储(store)(或网格中的列)的字段。但是,你可以利用metachage事件和返回的metaDaata键来让数据变得灵活。

注意:metachange事件目前只会被JSON读取器(reader)触发。

如果http://www.wfuyu.com/server/响应包括了在读取器的metaProperty配置项设置的metaData键,那数据便可从metaData响应中获得。任何传递过来的数据记录的根就能够在这里被定义为存储的字段。如果记录对象是通过metaData对象传递的,那末字段就被读取器自动利用到存储/模型。

与响应相干的信息也会传递回响应中,例如,1个关联存储的数组列也能够被传递,且可以使用存储的metachange事件来动态利用。

当metaData被传递回响应,就会触发metachange事件,这时候,处理程序就能够读取任何传递回来的数据并将其合并。

var store = Ext.create('Ext.data.Store', { // ... listeners: { 'metachange': function(store, meta) { myGrid.reconfigure(store, meta.columns); } } });

理想情况下,每次加载是不需要重新配置网格的,除非是字段/列需要进行重新配置。虽然如此,最好还是在字段或列产生改变的时候才使用传递回来的响应中的metaData。

有关metachange事件和metaData配置项的详细信息,请参阅以下资源:

  • metachange
  • metaData


------分隔线----------------------------
------分隔线----------------------------

最新技术推荐