如何在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],然后用于理解。