如何绑定到组件内的全局变量?

发布于 2024-08-02 12:17:27 字数 207 浏览 3 评论 0原文

我开发了一个组件,它是几个项目(画布、标签等)的组合,但是当我尝试将其绑定到变量时,例如: {stationXML.getItemAt(1).AAA.@value} ,它不起作用。在我将所有项目组合到一个组件中之前,它们当时都位于主 MXML 文件中。

不确定这是否重要,但“stationXML”数组集合变量是在文件“Station.as”内声明的。

有什么想法吗?

I've developed a component which is a combination of a few items (canvas, labels, etc...) but when I try to bind it to a variable such as : {stationXML.getItemAt(1).AAA.@value}, it doesnt work. Before I combined all the items in a component, they were all in the main MXML file at which time they worked.

Not sure if it matters, but the "stationXML" arraycollection variable is declared inside the file "Station.as".

Any ideas?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

海的爱人是光 2024-08-09 12:17:27

当您说“全局变量”时,它是在哪里以及如何声明的? Flex 应用程序中实际上并不存在全局变量这样的东西。如果您在主 MXML 类中声明了一些不使其成为全局的内容,则它可以通过该主应用程序类的实例进行访问。如果您想访问组件内的该值,则必须将其传递给该组件。或者,您可以实现一个单例类来有效地提供对这些值的“全局”访问。


例如,在组件中,创建一个公共属性:

public var xmlData:XML;

然后在主 mxml 中,向下传递值:

<xxx:MyComponent id="foo" x="10" xmlData="{theValue}"/>

When you say "global variable" where and how exactly is it declared? There aren't really such a thing as a global variable in a Flex application. If you declare something in your main MXML class that doesn't make it global, it makes it accessible by the instance of that main application class. If you want to access that value within a component then you must pass it down to that component. Alternatively, you could implement a singleton class to effectively provide "global" access to those values.


eg, in the component, create a public property:

public var xmlData:XML;

then in the main mxml, pass the value down:

<xxx:MyComponent id="foo" x="10" xmlData="{theValue}"/>
国粹 2024-08-09 12:17:27

Station.as 是否扩展了 EventDispatcher 并且该类(或属性)是否带有 [Bindable] 元数据标记?为了使绑定工作,您的类需要在其继承结构中的某个位置扩展 EventDispatcher,以便它能够通知绑定“客户端”它已更新。

does Station.as extend EventDispatcher and does the class (or property) carry the [Bindable] metadata tag? For binding to work your class needs to extend EventDispatcher someplace in its inheritance structure so that it is able to notify binding "clients" that it has updated.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文