在外部javascript文件中包含<c:out>是不错的做法?

时间:2015-07-09 15:11:29

标签: javascript jsp

我们使用jQuery / javascript做了很多JSP,为了使代码更可重用,大多数javascript都被抛到外部库然后导入到jsp文件中。但是,不可避免地,javascript中使用的一些值必须由java / jsp预定义,这意味着会有一些像这样的情况

alert('<c:out value="${i18n_alert_msg}"');

我知道我们总是可以把这样的东西作为函数的参数,但是当有很多像这样的地方时,它可能会非常讨厌,使参数列表变长和冗余。

所以只是想知道这是一个好习惯,只需将<c:out/>留在javascript文件中

2 个答案:

答案 0 :(得分:2)

没有价值'必须预先定义'。您的js代码可以从请求,cookie或最灵活,最强大的方式获取数据,只需从服务器获取它们。

您可以仅使用静态资源构建完全动态的单页应用程序,因此确保您不需要此功能。不要使js和css文件动态 - 让客户端缓存它们

答案 1 :(得分:1)

您的前端代码应该是动态的而不是代码文件本身,这会导致性能问题。

创建一个公共/实用程序(REST / vanilla AJAX)服务,无论何时需要,都会将消息发送到客户端,并根据需要从客户端调用服务。