Ссылка на код шаблона Scala в отдельном файле Javascript в Play Framework

Если у меня есть что-то подобное в Application.scala.html

<div id="action">Some content</div>

<script>
    $('action').click(function(){
         window.open(@routes.Application.index());
    )};
</script>

Это отлично работает, нет проблем.

Но если я помещу скрипт в его собственный файл Javascript, я больше не смогу использовать @routes.Application.index() ссылка. Можно ли в Play ссылаться на шаблоны Scala в отдельном Javascript-файле под public/javascripts?

1 ответ

Вы рассматривали что-то подобное?

<div id="action" data-target="@routes.Application.index()">Some content</div>

<script>
    $('action').click(function(){
         var target = $(this).data('target');
         window.open(target);
    )};
</script>

Затем вы можете извлечь JavaScript в свой собственный файл.

Хотя в данном конкретном случае <a> тег будет более подходящим (по ряду причин, включая доступность).

Другие вопросы по тегам