【问题标题】:flex using curly braces in XML attributes valueflex 在 XML 属性值中使用花括号
【发布时间】:2013-04-24 13:07:50
【问题描述】:

我想用硬编码的 XML dataProvider 设置一个 DataGrid。
我的一个属性值需要设置为“{*}”,我知道这会干扰数据绑定。
因此,我尝试用它们的 HTML 等效项替换花括号,但 Flex 仍在将 {*} 处理为数据

<s:ArrayList>
  <fx:Object dataField1="Field1" dataField2="Field2" dataField3="&#123;*&#125;"></fx:Object>
</s:ArrayList>

在属性文本中使用花括号的正确方法是什么

【问题讨论】:

  • 我想用反斜杠转义。
  • 请量化“Flex 不会让我”。你得到一个编译器错误吗?还是运行时错误?
  • 它基本上将&amp;#123; 视为{ 将包含的值解释为变量/常量

标签: apache-flex escaping curly-braces


【解决方案1】:

您可以使用RIAstar提到的方式:

&lt;fx:Object id="abc1" field1="\{*\}"/&gt;\

或者您可以使用真正的绑定使其将其中的任何内容视为代码,然后传递简单的字符串而不在其中转义 {}

&lt;fx:Object id="abc" field1="{'{*}'}"/&gt;

如果您需要将字段设置为更复杂的内容,您还可以使用绑定到返回某些内容的函数。

【讨论】:

  • 不信任带有 '\' 的 ActionScript 很糟糕
  • @MonoThreaded 你现在不要太相信它吗:我认为你不能在一个属性上做text="hello\"there\""
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-06
  • 2016-10-21
  • 1970-01-01
  • 2019-01-26
  • 1970-01-01
  • 2011-09-18
相关资源
最近更新 更多