代码之家  ›  专栏  ›  技术社区  ›  Dan Menes

Ext.Direct:将返回值匹配到调用

  •  0
  • Dan Menes  · 技术社区  · 16 年前

    我正在使用Ext.Direct模块进行一系列Ajax调用。我想在每次调用时保存一些数据,然后将每个返回值与正确的调用相匹配。

    在服务器调用中,Ext提供 tid 记录 我的客户端Javascript捕获 每日三次 拨出的电话。

    下面的方法可以工作,但是它使用了未记录的 Ext.Direct.TID 财产。假设 my.namespace.my_action.my_method 是已正确配置的Ext.Direct API调用:

    // Set up a global object in which to store data about pending calls
    pendingCalls = {};
    
    .
    .
    .
    
    // Make a call to the server-side routine, and queue the data
    my.namespace.my_action.my_method( call_data );
    pendingCalls[ Ext.Direct.TID ] = call_data;
    
    .
    .
    .
    //The handler of the Ext.direct.Provider's "data" event
    onData = function( provider, data ) {
        if data.type == "rpc" {
            // Recover the original call_data
            call_data = pendingCalls[ data.tid ];
    
            // Do something with call_data and data.result
        }
    }
    

    2 回复  |  直到 16 年前
        1
  •  0
  •   Dan Menes    16 年前

    我在问题中发布的解决方案是有效的,尽管它没有文档记录。既然没人用别的方法来做这件事,我就坚持下去。

        2
  •  0
  •   Hank    12 年前

    在进行ExtDirect调用时,传递参数、回调、作用域和选项。

    将您的通话数据放入选项中,并在每次回复时将其取回。