@If和someText @之间的区别如果Tapestry 4.1中的jwcid

时间:2017-06-13 11:11:39

标签: html tapestry

这可能是一个很长的镜头,考虑到Tapestry 4.1自2007年以来没有任何更新或者等等......但是在工作中他们有一个旧的遗留应用程序使用Tapestry 4.1。

我在想,

之间有什么区别
<span jwcid="something@If" condition="ognl:something">

<span jwcid="@If" condition="ognl:something">

如果有的话?或者something之前的@If没有额外的目的,而不是让它成为一个唯一的ID,也许可以在其他地方引用?

以下是我在Tapestry 4.1中找到的一些文档,但我无法找到问题的答案:

编辑:好的,我已经找到了部分答案in the documentation我上面已经联系过了。

  

了解DirectLink网址

     

DirectLink组件生成的URL比PageLink组件生成的URL更复杂。让我们来看一个:
  http://localhost:8080/directlink/app?component=%24DirectLink&page=Home&service=direct&session=T

     

第一个查询参数component标识页面中的组件。 %24是&#34; URL-ese&#34;一个美元符号。在Tapestry中,每个组件在其页面中都以唯一的ID结尾。如果您不提供,则Tapestry会从组件类型创建一个,前缀为美元符号。在这里,我们的annoynynmous DirectLink组件被赋予id $ DirectLink。如果页面上有许多不同的DirectLink,您就会开始看到组件ID,例如$ DirectLink_0,$ DirectLink_1等。
  您可以通过在&#34; @&#34;之前放置所需的ID来为组件提供更短且更多的mneumonic id。标志:
  <a href="#" jwcid="inc@DirectLink" listener="listener:doClick">increment counter</a>

     

对模板进行更改后,DirectLink组件的URL更容易阅读:
  http://localhost:8080/directlink/app?component=inc&page=Home&service=direct&session=T

但这如何适用于@If,它不会出现在网址中?

1 个答案:

答案 0 :(得分:0)

正如您所说,这只是Tapestry在其组件模型中使用的标识符。

以下来自用户指南的相关文档:Component IDs