gpt4 book ai didi

游戏框架 : Template equivalent of Java's continue & break?

转载 作者:行者123 更新时间:2023-12-04 06:03:27 24 4
gpt4 key购买 nike

在我的模板中,我迭代了一个元素列表。在某些情况下我想break;continue;在这些循环中。我将如何在 Play 模板语言中执行此操作?

我一直在这里查看文档:http://www.playframework.org/documentation/1.0.2.1/tags但我似乎找不到任何关于我将如何中断或继续的信息。以下是两个示例用例:

#{list items:myList as:'my'}
#{if my.name == "hello"}
//Do something
//I'd like to break here.
#{/if}
#{/list}

稍后在我的代码中,我有一个嵌套列表迭代,就像这样......
#{list items:item, as:'i'}
#{list items:anotherItem, as:'aI'}
#{if i.name != aI.name}
//Do Something here.
//I'd like to continue here.
#{/if}
#{/list}
#{/list}

继续

只是一个额外的问题..我可以用像 .contains();这样的列表做事吗? ?有人知道这门语言的好指南吗?

最佳答案

我认为 break 和 continue 不受 native 支持,但您始终可以创建自己的标签来处理这些情况。看看http://www.playframework.org/documentation/1.1.1/templates#fasttags详情。

#list 的默认实现是 GroovyInlineTags#_list - 这应该为您提供自定义额外参数所需的一切。

就我个人而言,我会在服务器端处理这个逻辑,并且只将您想要显示的内容传递到 View 中。这样就不再需要 break 了,并且 continue 可以作为使用现有标签的 if-else 语句来实现。

至于在对象上调用方法,当然。例如,您可以使用 #{if myList.contains('whatever')} 甚至将 Groovy elvis 运算符放在那里以确保空值安全,例如#{if myList?.contains('whatever')}

顺便说一下,您使用的是哪个版本的 Play 框架? 1.0.2 现在已经很老了! 1.1.1是1.1分支的最新版本,1.2.4是trunk的最新版本。还有 Play 2 ( http://www.playframework.org/2.0 ),它非常适合实验,但您可能希望暂时不要将其用于生产。该框架的更高版本有更好的文档。在开发模式下运行时,您还可以在 http://localhost:9000/@documentation 访问特定于版本的文档。 (根据需要更正端口号)。

关于游戏框架 : Template equivalent of Java's continue & break?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8667777/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com