gpt4 book ai didi

javascript - 如何将 javascript 数组转换为 scala List 对象

转载 作者:行者123 更新时间:2023-12-03 10:43:16 25 4
gpt4 key购买 nike

我继承了一些使用 Play! 的代码。框架,其中包含 scala.html 文件,其中包含 javascript。玩!和 scala 对我来说都是新的。

其中一个 JavaScript 函数执行一次发布并返回一个 JSON 对象。然后它循环遍历 JSON 对象并创建一个数组。

var myArray = [];

function createArray(){
$.post('/createArray', $('#arrayForm').serialize()).done(function( data ) {
var obj1 = JSON.parse(data);
$.each(obj1, function(idx, obj) {
myArray.push(obj.name);
});
});
return true;
}

然后,它使用这个(字符串)数组创建一个文本输入字段,该字段使用数组中的数据自动完成。

我想要/需要使用 Play! 将此文本输入转换为选择下拉列表@select 但 @select 的选项参数需要一个 List 对象(或 Map 或 Seq - 只是认为 List 会更容易,因为我已经有一个字符串数组)。

如果我手动创建 List 对象,它工作正常。

@select(pForm("equipName"), options(scala.collection.immutable.List("Yes","No")))

问题是我无法弄清楚如何将 myArray 数组转换为 List 对象,然后我可以将其传递给 @select 选项。

我发现很多帖子都讨论将 scala List 转换为数组,但找不到另一种方法。我希望这是一件我似乎无法弄清楚的简单事情。

预先感谢您的帮助。

最佳答案

你不能那样做。更准确地说 - 你不想这样做。

所以基本上你的 Play 应用程序在服务器上运行。在您的 Play 应用程序中,所有这些 .scala html 文件都会被编译以生成一些函数。

现在,当 Play 应用程序收到来自客户端浏览器的请求时,它会通过路由器映射到某个 Controller 。 Controller 进行一些处理,最后采用上述函数之一(假设对于 index.scala.html 我们得到 views.html.index )并使用一些函数调用此函数参数。

这些函数返回一些文本,然后将其作为带有响应 header Content-Type:text/html;的HTTP响应发送到客户端的浏览器; charset=utf-8 告诉浏览器将此文本视为 html

现在,浏览器呈现嵌入了 JavaScript 的 html 并因此运行 JavaScript。所以...基本上你的JavaScrpt代码在服务器上不存在...对于 Play 来说,所有这些都只是文本。

这些 Scala 代码JavaScript 代码 都是在不同的时间、不同的计算机和不同的环境中执行的,因此你不能做你所说的任何事情。

关于javascript - 如何将 javascript 数组转换为 scala List 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28680209/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com