如何在Scala视图页面中迭代JsArray(value map不是play.api.libs.json.JsArray的成员)
How to iterate JsArray in Scala view page (value map is not a member of play.api.libs.json.JsArray)
我在 Scala 视图页面上使用 JsArray,我尝试使用 for 循环迭代它,但是在 Scala 视图页面上抛出错误,这里附上我的代码,我该如何解决它。
@(jsonArrValue: play.api.libs.json.JsArray)
<html>
<body>
<table>
<thead>
<tr>
<th>Details</th>
</tr>
</thead>
<tbody>
<tr>
@for(x <- jsonArrValue){
<td>@x</td>
}
</tr>
</tbody>
</table>
</body>
</html>
错误:
value map is not a member of play.api.libs.json.JsArray
jsonArrValue 包含:
[{"empName":"xxx","age":"23","empNo":"123"},{"empName":"yyy","age":"24","empNo":"1234"}]
虽然名称 JsArray 可能暗示它是一种集合,但实际上并非如此。定义:
case class JsArray(value: Seq[JsValue] = List()) extends JsValue with Product with Serializable
清楚地表明了这一点。这就是为什么 for comprehension 不起作用的原因。
而且我认为迭代它的最好方法是调用它的 value() 方法转换为 Seq[JsValue],然后用于理解。
我在 Scala 视图页面上使用 JsArray,我尝试使用 for 循环迭代它,但是在 Scala 视图页面上抛出错误,这里附上我的代码,我该如何解决它。
@(jsonArrValue: play.api.libs.json.JsArray)
<html>
<body>
<table>
<thead>
<tr>
<th>Details</th>
</tr>
</thead>
<tbody>
<tr>
@for(x <- jsonArrValue){
<td>@x</td>
}
</tr>
</tbody>
</table>
</body>
</html>
错误:
value map is not a member of play.api.libs.json.JsArray
jsonArrValue 包含:
[{"empName":"xxx","age":"23","empNo":"123"},{"empName":"yyy","age":"24","empNo":"1234"}]
虽然名称 JsArray 可能暗示它是一种集合,但实际上并非如此。定义:
case class JsArray(value: Seq[JsValue] = List()) extends JsValue with Product with Serializable
清楚地表明了这一点。这就是为什么 for comprehension 不起作用的原因。
而且我认为迭代它的最好方法是调用它的 value() 方法转换为 Seq[JsValue],然后用于理解。