我们使用jQuery / javascript做了很多JSP,为了使代码更可重用,大多数javascript都被抛到外部库然后导入到jsp文件中。但是,不可避免地,javascript中使用的一些值必须由java / jsp预定义,这意味着会有一些像这样的情况
alert('<c:out value="${i18n_alert_msg}"');
我知道我们总是可以把这样的东西作为函数的参数,但是当有很多像这样的地方时,它可能会非常讨厌,使参数列表变长和冗余。
所以只是想知道这是一个好习惯,只需将<c:out/>
留在javascript文件中
答案 0 :(得分:2)
没有价值'必须预先定义'。您的js代码可以从请求,cookie或最灵活,最强大的方式获取数据,只需从服务器获取它们。
您可以仅使用静态资源构建完全动态的单页应用程序,因此确保您不需要此功能。不要使js和css文件动态 - 让客户端缓存它们
答案 1 :(得分:1)
您的前端代码应该是动态的而不是代码文件本身,这会导致性能问题。
创建一个公共/实用程序(REST / vanilla AJAX)服务,无论何时需要,都会将消息发送到客户端,并根据需要从客户端调用服务。