scala - 带有doIf条件的加特林foreach循环
问题描述
我有一个 ChainBuilder 对象链要执行。
在其中一个中,我得到了一个"id"。然后我得到一个任务列表并尝试遍历它们以找到我需要完成的任务。
但是当我这样做时,它会显示Type mismatch Expected: ChainBuilder Found: B。
val processTask: ChainBuilder = getTasks
.foreach("${tasks}", "task") {
doIfEquals("${task.id}", "${id}") {
exec(completeTask)
}
}
def getTasks: HttpRequestBuilder = {
http("Get tasks")
.get(tasksUrl)
.check(jsonPath("$[*]").saveAs("tasks"))
}
如何使用条件正确循环列表?
解决方案
.foreach
is a ChainBuilder method and you're trying to invoke it from a HttpRequestBuilder
so it can't compile.
val processTask = exec(getTasks)
.foreach("${tasks}", "task") {
doIfEquals("${task.id}", "${id}") {
exec(completeTask)
}
}
推荐阅读
- c++ - 委托构造函数和引用参数
- sql - 无重复联合或连接查询
- docker - 无法使用 Google Cloud Kubernetes 替换
- python-3.x - 在 Python 中将列表连接成字符串
- android - 如何在 64 位设备(android)上运行颤振应用程序?
- android - Unity - 首次运行时未加载 Android 上的数据库
- tensorflow - 用 Tensorflow 解决有向图问题
- android-source - 在aosp中构建静态库
- css - vuetify 上有卡片页脚/卡片组功能吗?
- javascript - Javascript - 更新对象道具的功能