如何在 Scala 视图页面中迭代 JsArray(值映射不是 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

清楚地表明了这一点。这就是为什么理解不起作用。

我认为迭代它的最佳方法是调用其 value() 方法转换为 Seq[JsValue],然后用于理解。

最新更新