У меня есть пользовательский компонент на основе mx: ComboBox.В нем я подключаюсь к HTTPService (URL передается как параметр) и связываю комбинированный список.Параметры для отправки в HTTPService передаются компоненту.Это работает нормально.Но я хочу изменить его, чтобы его можно было повторно использовать с другими URL-адресами служб HTTP, которые возвращают XML в другом формате.
Моя задача заключается в том, как динамически связать пользовательский компонент с узлом во время выполнения?
Код MXML компонента выглядит следующим образом:
<mx:ComboBox xmlns:mx="http://www.adobe.com/2006/mxml"
dataProvider="{myData.person}
<mx:HTTPService id="serviceTest"
resultFormat="e4x"
result="myResultHandler(event);"
fault="myFaultHandler(event);" />
</mx:ComboBox>
Мне может потребоваться изменить
myData.person
на:
myData.region
Это можно сделать в MXML?
Или это можно сделать в Actionscript?Есть ли что-то вроде:
this.dataProvider = myData.[person];
Хитрость в том, что я не буду знать, с чем связываться, поскольку XML будет отличаться при каждом использовании.
Возможно ли это?Или любой обходной путь, который достигает того же самого?
РЕДАКТИРОВАТЬ: он работает со свойством "child".
dataProvider = "{myData.child (myDataField)}"
Но это не работает, если поле данных далее вложено.Например, myData.people.person
Есть ли способ заставить его работать, если поле данных вложено в другой узел?Можно ли это сделать с помощью выражения XPATH или чего-то еще?