gpt4 book ai didi

javascript - Scala 模板中未捕获的 ReferenceError

转载 作者:行者123 更新时间:2023-12-03 02:20:09 24 4
gpt4 key购买 nike

我试图在 JavaScript 中访问 Scala 值,但它给了我错误。

Scala 模板 - login.scala.html :-

@import com.tempapp.Constants.Languages

<html>
...
</html>

<script>
var langs = @Languages.values; // Error
...
</script>

Languages 是一个枚举:-

public enum Languages{
ENGLISH, VIETNAMESE;
}

Error :- Uncaught ReferenceError: ENGLISHVIETNAMESE is not defined at HTMLDocument. (merchant:282) at j (jquery-2.1.4.min.js:2) at Object.fireWith [as resolveWith] (jquery-2.1.4.min.js:2) at Function.ready (jquery-2.1.4.min.js:2) at HTMLDocument.I (jquery-2.1.4.min.js:2)

最佳答案

您不能像这样将 enum 的值转储到 Javascript 变量中。

您需要将 enum 转换为逗号分隔的字符串,然后将其括在 [] 内:

var langs = [@Arrays.toString(Languages.values()).replaceAll("^.|.$", "").replaceAll("(?<=[\n, ]?)([^\n, ]+)(?=[\n, ]?)","'$1'")];

对于带有 @Prefix 的版本,您只需将 Scala 变量括在引号内:

var prefix = '@Prefix';

关于javascript - Scala 模板中未捕获的 ReferenceError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49195247/

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