2013-05-12 4 views
7

Wenn eine Scala Liste von Strings in einen Javascript-Array von Strings mit der Play Template-Engine umzuwandeln, mit so etwas wie diesem Sie wahrscheinlich ... beginnenScala Play - Wie konvertiert man eine Liste von Scala Strings in ein Array von Javascript Strings (Vermeidung der " Ausgabe)?

var strArray = [@scalaListOfStrings.mkString(",")]; 

... und wird feststellen, dass dies nicht funktioniert , weil die Anführungszeichen um die Strings fehlen. Als nächstes könnten Sie so etwas wie dieses versuchen ...

var strArray = [@scalaListOfStrings.map(s => "\"" + s + "\"").mkString(",")]; 

... nur, um herauszufinden, dass diese die Saiten in " und nicht " wickeln wird. Der einzige Weg, ich war in der Lage, diese Arbeit zu machen, war mit ...

var strArray = [@Html(scalaListOfStrings.map(s => "\"" + s + "\"").mkString(","))]; 

... und meine Frage ist: Ist dies der beste/einzige Weg, dies zu tun?

Antwort

5

Sie auf der Json.toJson() -Methode verlassen kann die Umwandlung zu machen

@import play.api.libs.json._ 

var strArray = @Json.stringify(Json.toJson(List("hello", "world", "everybody"))) 
2

nicht @Html Vergessen Sie.

@Html(Json.stringtify(Json.toJson(Scala object))) 
Verwandte Themen