Как выделить константы для JavaScript?
У меня есть веб-страница, созданная с помощью JavaServer Pages (JSP) и значительного JavaScript (JS), который выполняет вызовы на другие серверы. URL-адрес, с которым переходит страница, зависит от того, на каком сервере (читай: среда) я развернут.
У меня есть две возможные стратегии (по крайней мере), которые я могу использовать.
- Я могу определить константу имени сервера в файле JS и использовать тег сценария на этой веб-странице.
- Я могу написать переменную JS со страницей JSP, как своего рода динамический контент.
Я сильно полагаюсь на стратегию 1, но не уверен, что один из них действительно лучше. Я хотел бы знать, что такое лучшая практика и почему.
1 ответ
У меня та же проблема, честно говоря, я понятия не имею, каков "правильный" способ сделать это, но я ненавижу глобальные переменные, поэтому в настоящее время я делаю это так,
В JSP,
<script src="${pageContext.request.contextPath}/js/script.min.js"></script>
<script type="text/javascript">
init('${pageContext.request.contextPath}');
</script>
Тогда JS есть,
function init(baseURL, undefined){
...
}
Тогда не о чем беспокоиться.