Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
209
Добавлен:
10.05.2015
Размер:
8.8 Mб
Скачать

14.2.4. Ресурсы в Jasp

При загрузке страницы, Jasp определяет, какие ресурсы используются на странице: это может быть HTML-разметка, один или несколько CSS или JavaScript файлов. Jasp группирует все CSS и JavaScript файлы в один CSS и один JavaScript файл и добавляет специальные ссылки в HTML разметку, по которым они подгружаются браузером:

<script type="text/javascript" src="?$scripts=7_5_2_3_4_6_&v=-1720007920"> </script>

<link rel="stylesheet" type="text/css" href="?$styles=&v=-1720007920" />

По-хорошему, у всех страниц сайта должна быть одна базовая страница (аналог MasterPage), содержащая одинаковый набор базовых стилей и скриптов. Таким образом, данные ресурсы "закэшируются" и для других страниц сайта.

Страницы могут отличаться набором компонент, которые на них расположены. При загрузке страницы Jasp также определяет, какие ресурсы используют все компоненты, расположенные на странице. HTML каждого компонента подставляется в соответствующее место в результирующий HTML, а все CSS и JavaScript файлы, по аналогии с ресурсами страницы, объединятся в один CSS и один JavaScript файл.

<script type="text/javascript" src="?$pageScripts=2_&$r=&v=-1720007920"> </script>

<link rel="stylesheet" type="text/css" href="?$pageStyles=2_&$r=&v=-1720007920" />

У каждой страницы или компонента могут быть как личные ресурсы, которые подгружаются автоматически и могут использоваться только данным компонентом, или его наследниками, так и общие, которые могут использоваться сразу несколькими компонентами. Личные ресурсы должны называться также как имя класса компонента (без учета расширения). Естественно, ресурсы компонент, которые изначально не используются на странице, загружены не будут. Их загрузка произойдет автоматически при первом использовании.

14.2.4.1. Css ресурсы

Зачастую в проектах бывает один или пару CSS файлов, в которые без разбора добавляются все стили из всего проекта, даже если стиль используется один раз для определенного элемента. Такой файл получается довольно большим и трудно поддерживаемым. В Jasp можно создать общий файл, куда поместить основные стили, а стили, специфичные для определенных компонент или страниц, помещать в личные CSS-файлы компонент.

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

14.2.4.2. JavaScript ресурсы

JavaScript ресурс – это текстовый файл с расширением js, содержащий JavaScript-код компонента. Данный файл должен определять один единственный объект – экземпляр компонента. В простейшем случае это пустой объект:

{

}

Если в объекте определена функция $init, то она будет вызвана сразу же после вызова клиентского конструктора (конструкторы создаются автоматически и подменять или модифицировать их нельзя):

{ $init: function(){

// код инициализации

}

}

Также в контексте данного объекта могут быть определены и другие функции компонента.

14.2.4.3. Html ресурсы

HTML ресурс – это текстовый файл с расширение html или htm, содержащий HTML разметку компоненты или страницы. Данный файл должен удовлетворять синтаксическим требованиям XML, но при этом, может не являться XHTML-документом. Также в этом файле могут встречаться вставки для создания экземпляров дочерних компонент.