/ / Wie kann Flex ein Ein-Element-Array aus XML-Daten erstellen? - Xml, Flex, ActionScript-3

Wie kann Flex ein Ein-Element-Array aus XML-Daten erstellen? - Xml, Flex, ActionScript-3

Ich erhalte XML-Daten in Flex über HttpService. ich habe resultFormat Eigenschaft auf der HttpService-Instanz auf HTTPService.RESULT_FORMAT_OBJECT. Das Ergebnis enthält ähnliche Daten:

<!-- ... -->
<children>
<item><!-- ... --></item>
<item><!-- ... --></item>
<!-- ... -->
<children>
<!-- ... -->

Ich bekomme ein Array namens Element unter dem Element Kinder, wenn es mehr als eins gibt item Geschwister. Wenn es nur einen gibt, kann die Umwandlung ihn nicht von einem Skalar unterscheiden.

Was muss ich ändern, damit Flex alle konvertiert? item Elemente zu einem Array mit 0 oder mehr Elementen?

Was müsste ich tun, um ein Array-Mitglied zu bekommen? childrenfallen lassen item Wrapper insgesamt?

Das XML wird von Struts auf der Serverseite generiert. Ich habe immer die Möglichkeit, die Struktur des Dokuments dort zu ändern, aber im Moment bin ich daran interessiert, was ich mit Flex machen kann.

Antworten:

0 für die Antwort № 1

Das item Objekt sollte ein sein XMLList ob es einen oder mehrere Einträge gibt. (Es wird sein undefined wenn es keine gibt.)

Sie können verwenden XML Methoden, wenn es nur ein Element gibt, aber das ist nur als eine Bequemlichkeit. Siehe die XMLList-Dokumentation.

Ich empfehle auch Kommentar 5 dazu Blog-Eintrag von Mike Morearty (zwischengespeicherte Version, da die Site anscheinend nicht zugänglich ist).


-1 für die Antwort № 2

Versuche dies:

try {
for (var i:int = 0; /* loop forever till error is thrown */; i++) {
var j:String = String( children.item[ i ].SomeOtherAttribute ); // if its a string
}
} catch (re:RangeError) {
}