Подтвердить что ты не робот

Play framework: как использовать "moreStyles" и "moreScripts"

В файле main.html в проекте по умолчанию, созданном Play!, есть эта строка:

#{get 'moreStyles' /}

Я понимаю, что если мне нужно добавить больше стилей, на мой взгляд script, я должен использовать

#{set tag:'value' /}

где tag должно быть moreStyles, но, похоже, worng устанавливает значение в полный тег HTML <link>. И что произойдет, если в представлении нужно добавить больше стилей или скриптов?

Спасибо!

4b9b3361

Ответ 1

вы устанавливаете больше стилей с помощью:

#{set 'moreStyles'}
        #{stylesheet 'main.css' /}
#{/set}

как скрипты:

#{set 'moreScripts'}
    #{script 'base64.js'/}
#{/set}

Ответ 2

простое использование тега # {set} перезапишет предыдущие значения.

то есть, если вы выдаете

#{set 'moreStyles'}xxx#{/set}

а затем

#{set 'moreStyles'}yyy#{/set}

то

#{get 'moreStyles' /}

будет возвращать только yyy

чтобы достичь того, что вы хотите, чтобы

#{set 'moreStyles'}
    #{get 'moreStyles' /}
    #{stylesheet 'main.css' /}
#{/set}

а затем таблица стилей main.css будет добавлена ​​к предыдущему значению morestyles

В аналогичной ситуации я создал собственный тег # {addStyle}

Ответ 3

#{set 'moreStyles'}
<link rel="stylesheet" type="text/css" media="screen" href="#" onclick="location.href='http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.14/themes/ui-lightness/jquery-ui.css'; return false;" charset="${_response_encoding}"/>
#{/set} 
#{set 'moreScripts'}
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.14/jquery-ui.min.js" type="text/javascript" charset="${_response_encoding}"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.14/i18n/jquery.ui.datepicker-zh-CN.js" type="text/javascript" charset="${_response_encoding}"></script>
<script language="javascript">
    $(document).ready(function() {
        $('.datepicker').datepicker();
    });
</script>
#{/set}