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

Где я должен поместить библиотеки javascript в приложение Grails?

У меня есть несколько Javascript-библиотек, которые делают некоторые приятные фотографии моих HTML-страниц, и я хочу включить их в мои страницы gsp, особенно целевую страницу моего приложения. Я попытался поместить их в папку views и web-app/js и $APP_HOME/scripts, но когда я загружаю index.gsp, сценарии не отображаются.

Я также пробовал различные варианты в моем коде, ни один из которых не работает...

<script src="mylib.js" type="text/javascript"></script>
<script src="js/mylib.js" type="text/javascript"></script>
<script src="scripts/mylib.js" type="text/javascript"></script>

Я уверен, что есть хитроумный способ сделать это на лету, но мне действительно нужно место, где я могу разместить какой-нибудь шаблонный JavaScript-код, который я могу использовать в своем приложении. С учетом концепции конфигурации, какова ожидаемая практика?

4b9b3361

Ответ 1

С вашим JS файлом по адресу web-app/js/myLib.js, помещая <g:javascript library="myLib" /> в ваш макет, я должен быть тем, что вам нужно.

Ответ 2

Вы, вероятно, НЕ должны использовать <g:javascript library="myLib" />, поскольку это предназначено для использования в качестве способа сделать библиотеку вызовов AJAX (scriptaculous, dojo, yahoo, jquery) равнодушной. Смотрите grails javascript. Вместо этого используйте <g:javascript src="myLib.js" />.

Ответ 3

Есть два способа, которыми вы можете включить JS файл и JS-библиотеку, например scriptaculous

// actually imports '/app/js/myscript.js'
<g:javascript src="myscript.js" />

// imports all the necessary js for the scriptaculous library
<g:javascript library="scriptaculous" />

<g:javascript>alert('hello')</g:javascript>

Обратитесь: http://grails.org/doc/latest/ref/Tags/javascript.html

Ответ 4

Думаю, я нашел ответ...

Если я использую этот тег в своем gsp (а не в простой ссылке javascript)

<g:javascript library="mylib" />     

Затем, когда я смотрю на сгенерированный источник страницы, он ссылается на

<script type="text/javascript" src="/myapp/js/mylib.js"></script>

Это соответствует папке web-app/js, поэтому я бросил свою библиотеку script там, и она отлично работает. Прорыв был для меня: a) переименовать мой index.html в index.gsp и b) использовать тег g:javascript.

Ответ 5

Используйте <g:javascript src="myscript.js" /> и поместите свой script в web-app/js/myscript.js

Подробные сведения и примеры для ваших собственных внешних скриптов, встроенного кода и библиотек см. http://grails.org/doc/latest/ref/Tags/javascript.html.