Play Framework: как использовать «moreStyles» и «moreScripts» - PullRequest
23 голосов
/ 11 марта 2011

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

#{get 'moreStyles' /}

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

#{set tag:'value' /}

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

Спасибо!

Ответы [ 3 ]

36 голосов
/ 22 марта 2011

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

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

как скрипты:

#{set 'moreScripts'}
    #{script 'base64.js'/}
#{/set}
19 голосов
/ 23 марта 2011

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

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

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

, а затем

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

затем

#{get 'moreStyles' /}

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

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

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

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

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

3 голосов
/ 11 июля 2011
#{set 'moreStyles'}
<link rel="stylesheet" type="text/css" media="screen" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.14/themes/ui-lightness/jquery-ui.css" 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}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...