Node.js с Express: импорт клиентского javascript с использованием тегов скрипта в представлениях Jade?

У меня есть экспресс-сервер node.js, работающий с механизмом шаблонов Jade.

У меня есть файл jade макета, который импортирует тело отдельных представлений следующим образом:

!!!
html

    head
        title= title || 'Title not set.'

    body
        #header
            h1 Header.

        #content!= body //- this renders the body of an individual view

        #footer
            p Footer.

Например , следующая индексная страница:

p Welcome to the front page.

p This page serves as a now.js test.

Это нормально работает. Однако теперь я хочу включить две клиентские библиотеки javascript специально для этой индексной страницы (и, следовательно, не для каждой страницы, поэтому я не могу поместить ее в заголовок макета).

Это работает:

//- import jquery
script(type='text/javascript', src='./jquery-1.5.2.min.js');

//- import now.js (hosts itself)
script(type='text/javascript', src='/nowjs/now.js')

//- import the chat client
script(type='text/javascript', src='./indexChatClient.js')

p Welcome to the front page.

p This page serves as a now.js test.

Однако , это загружает скрипты в тело всей страницы, а это недопустимый HTML, верно?

Насколько мне известно, скрипты должны быть загружены в заголовок, если я хочу сделать это правильно, но в раздел заголовка обрабатывается файлом макета.

Итак, как мне правильно включить эти клиентские библиотеки javascript специально для определенного вида / страницы?

20
задан Tom 9 April 2011 в 13:43
поделиться