var alias:String = 'models.User';
registerClassAlias(alias, models.User);
// If I have the alias, then
// I can get the class like this:
var klass:Class = flash.net.getClassByAlias(alias);
// How do I do the reverse
// (get the alias from the class)?
//
// I want to do this, but I can't find a
// 'getAliasByClass' function.
alias = getAliasByClass(klass);
答案 0 :(得分:1)
答案 1 :(得分:1)
getQualifiedClassName应该可以做到这一点。
alias = flash.utils.getQualifiedClassName( klass );
// should return: "models::User"
无论哪种方式,都可以传递类引用或类的实例。
答案 2 :(得分:0)
如上所述,您可以调用flash.utils.describeType()并在Actionscript对象的类上使用“reflection”来查询对象的属性,属性和方法。
例如,ObjectCodec.as的以下代码段似乎使用“@”检索别名属性:
override protected function encodeComplex(o:Object, b:IBinary, context:IContext=null):void
{
var desc:XML = describeType(o);
var classAlias:String = desc.@alias;
//...
}