Я ссылаюсь на этот сайт текст ссылки
Использование неправильного имени события в
[Bindable] тег может привести к
приложение, чтобы не связывать вашу собственность,
и ты даже не узнаешь почему. когда
вы используете тег [Bindable] с
пользовательское имя, пример ниже выглядит
как хорошая идея:
public static const EVENT_CHANGED_CONST:String = "eventChangedConst";
private var _number:Number = 0;
[Bindable(event=EVENT_CHANGED_CONST)]
public function get number():Number
{
return _number;
}
public function set number(value:Number) : void
{
_number = value;
dispatchEvent(new Event(EVENT_CHANGED_CONST));
}
Код выше назначает статический
Свойство к имени события, а затем
использует то же назначение для отправки
событие. Тем не менее, когда значение
изменения, привязка не появляется
работать. Причина в том, что событие
имя будет EVENT_CHANGED_CONST и
не значение переменной.
Код должен был быть написан как
следует:
public static const EVENT_CHANGED_CONST:String = "eventChangedConst";
private var _number:Number = 0;
[Bindable(event="eventChangedConst")]
public function get number():Number
{
return _number;
}
public function set number(value:Number) : void
{
_number = value;
dispatchEvent(new Event(EVENT_CHANGED_CONST));
}
Я согласен, неправильный пример выглядит хорошей идеей, и я бы сделал это так, потому что я думаю, что это правильный путь и избегает возможности опечатки. Почему имя константы используется вместо ее значения? Конечно, это не может быть правдой?
Я ценю ваши идеи