如何使用 e4X 创建变量路径?
我需要知道如何解析 Flex 3 & 中的变量路径e4X。例如,我有两个 XML 字符串,其中一个元素的名称是唯一的区别。
<NameOfRoot>
<NameOfChild1>
<data>1</data>
</NameOfChild1>
</NameOfRoot>
<NameOfRoot>
<NameOfChild2>
<data>2</data>
</NameOfChild2>
</NameOfRoot>
目前我正在访问这样的变量:
var data1:String = NameOfRoot.*::NameOfChild1.*::data;
var data2:String = NameOfRoot.*::NameOfChild2.*::data;
我宁愿让这个任务更加抽象,这样如果引入“NameOfChild3”,我就不需要更新代码。例如:
var data:String = NameOfRoot.*::{variable}.*::data;
有人知道如何做到这一点吗?
I need to know how I can parse a variable path in Flex 3 & e4X. For example, I have two XML strings where the name of one element is the only difference.
<NameOfRoot>
<NameOfChild1>
<data>1</data>
</NameOfChild1>
</NameOfRoot>
<NameOfRoot>
<NameOfChild2>
<data>2</data>
</NameOfChild2>
</NameOfRoot>
Currently I am accessing variables like this:
var data1:String = NameOfRoot.*::NameOfChild1.*::data;
var data2:String = NameOfRoot.*::NameOfChild2.*::data;
I would rather make this task more abstract so that if "NameOfChild3" is introduced I do not need to update the code. For example:
var data:String = NameOfRoot.*::{variable}.*::data;
Does anyone have insights into how this can be done?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
使用
子
此处):a>属性 命名空间 - 不确定您的情况是否有必要,但我假设您会添加一些
*::
?Use the
child
property (LiveDocs example here):That's with no namespacing--not sure whether it's necessary in your case, but I assume you'd add some
*::
's?这也有效:
但是如果你有超过 1 个数据节点,你就必须整理一些东西。
this also works:
but if you have more than 1 data node you'll have to sort some stuff out.
它看起来像“.*”。操作将会起作用。我想知道这是否是解决这个问题的最简单的方法。
It looks like the ".*." operation will work. I wonder if this is the easiest way to handle this problem.