转发变量参数

时间:2009-07-19 01:06:17

标签: actionscript-3 remoting

我在我自己的RemoteObject类中封装了对远程服务的调用。这一切都正常,除非我必须处理传递给远程调用的变量参数。由于这是对NetConnection.call的调用,我应该能够传递变量参数,但因为我封装了NetConnection.call,所以它会抛出错误。这就是我的方法目前的样子:

public function call( method : String, callback : Function, ... args ) : void
{
    var responder : Responder;

    responder = new Responder( callback, onResponderStatus );

    this._nc.call( this._remoteObject + "." + method, responder, args );
}

如您所见,我的方法将变量arguments参数作为最后一个参数。我正在尝试将这些参数传递给NetConnection.call方法。但是,在我的方法范围内,args将是Array类型。如何将变量参数正确转发到NetConnection.call

1 个答案:

答案 0 :(得分:7)

Function::apply正是你要找的......最后,它应该是这样的:

this._nc.call.apply(this._nc, [this._remoteObject + "." + method, responder].concat(args) );

格尔茨

back2dos