我正在尝试升级Socket.IO extern,我遇到了问题。
到目前为止,要设置变量,他们使用
socket.set(key, val, callback);
但现在是
socket.key = val;
(请参阅GitHub上的问题)
我怎么能在Haxe中反映这种行为?
欢迎任何线索!
答案 0 :(得分:2)
我建议使用内联函数:
public inline function set(key : String, value : Dynamic)
Reflect.setField(this, key, value);
答案 1 :(得分:1)
您还可以使用“using”关键字。
class SocketExtender {
public static inline function set(socket:Socket, key:String, value:Dynamic):Void {
Reflect.setField(socket, key, value);
}
public static inline function get(socket:Socket, key:String):Dynamic {
Reflect.field(socket, key);
}
}
然后通过导入添加“using com.my.package.SocketExtender;
”,您的代码应该重新开始工作。