繁体   English   中英

将set函数作为参数传递

[英]Pass a set function as an argument

如何将“设置”函数作为另一个函数的“函数对象”参数传递? 例如:

public class IdModel
{
    private var _id:String;

    public function IdModel(source:Source)
    {
        //Create Binding
        BindingUtils.bindSetter(id,source,"id");

    }

    public function get id():String
    {
        return _id;
    }

    public function set id(value:String):void
    {
        _id = value;
    }
}
}

在上面的示例中,正在评估'id'参数并返回字符串,因此它不会编译并显示错误:“字符串不可分配给Function类型的参数”。

谢谢

在这种情况下,您无需这样做; 您可以改用BindingUtils.bindProperty

BindingUtils.bindProperty(this, "id", source, "id");

但是,如果您真的想使用bindSetter和函数,则可以执行以下操作:

BindingUtils.bindSetter(function (arg:*): void { id = arg; }, source, "id");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM