Flex 4: XML-литералы с условиями
Есть ли способ сделать что-то вроде следующего (псевдокод) во Flex:
var x:XML = <xml>
if(condition){
<tag>hello</tag>
}
</xml>;
который бы вернулся <xml><tag>hello</tag></xml>
если условие было верно и <xml></xml>
(или же <xml/>
) если условие было ложным?
ДОПОЛНИТЕЛЬНОЕ ПРИМЕЧАНИЕ: я знаю, как добавлять детей и т. Д. Я ищу способ сделать это в буквальном выражении.
2 ответа
Решение
Я был действительно поражен тем, насколько он прост и насколько мощным может быть AS3. Следующее фактически работало:
var x:XML = <xml>{condition ? <tag>hello</tag> : ""}</xml>;
Использовать appendChild
метод:
var sample:XML = <sample><items/></sample>;
if( condition ) sample.items.appendChild(<tag>hello</tag>);
else sample.items.appendChild( </tag> );