In Flex 3 könnte MX Effekte wie diese ausgelöst werden:Spark-Effekte: Warum wird der prozedurale Code gegenüber Triggern bevorzugt?
<mx:Resize id="myEffect" />
<mx:Button mouseDownEffect="{myEffect}" />
In Flex 4 Spark Effekte wie diese ausgelöst werden:
protected function onClick(event:MouseEvent):void {
resizeEffect.end();
resizeEffect.play();
}
...
<s:Resize id="resize" />
...
<s:Button click="onClick(event)" />
Was ist der Grund war dies weniger deklarative und mehr zu verwenden, Ansatz? Ich konnte die Antwort nirgends in den Dokumenten finden.
(zwei Dinge zu beachten:.
- Es können kleine Unterschiede zwischen mouseDown- Trigger und dem Click-Ereignis sein, ignorieren Sie das, es ist nur ein Beispiel
- Ich bin nicht sicher, ob Trigger würde oder würde nicht zuverlässig für Spark-Effekte funktionieren. Vielleicht würden sie, aber ich denke, es gibt einen Grund, warum diese Möglichkeit nicht einmal in den offiziellen Dokumenten erwähnt.
)
Kennen Sie das Warum hinter dieser Entscheidung? War es der Zeitmangel? Ich finde es seltsam, dass das gesamte deklarative Spark-Modell Imperativ-Code verwendet, um Effekte auszulösen. – Borek
Ich bin mir nicht wirklich sicher, was die Entscheidung betraf, aber ich würde vermuten, dass ein Ausgleich zwischen der Zeit, die zur Implementierung des Features erforderlich war, und der Priorität unter anderen Features sein könnte. Möglicherweise wurde es als ein Feature identifiziert, das mehr Community-Feedback benötigt, um zu sehen, wie oft es tatsächlich verwendet wird. Bitte stimmen Sie über den Fehler ab und/oder hinterlassen Sie einen Kommentar mit Ihrem Anwendungsfall, wenn Sie der Meinung sind, dass dies wichtig ist. Je mehr Stimmen/Rückmeldungen es erhält, desto größer ist die Wahrscheinlichkeit, dass es umgesetzt wird. –