Класс-компонент
CClientScript предназначен для подключения js-скриптов и css-стилей.
По умолчанию доступ к нему осуществляется через
Yii::app()->clientScript.
Компонент содержит свойство
packages, с помощью которого можно формировать пакеты скриптов, через конфигурационный файл делается это так:
'components' => array(
'clientScript' => array(
'packages' => array(
'item' => array(
'basePath'=>'application.assets'
'js' => array('js/item.js'),
'depends' => array('jquery'),
),
'filter' => array(
'basePath'=>'application.assets'
'js' => array('js/filter.js'),
'depends' => array('jquery'),
),
),
),
),
Тут создается 2 пакета -
item и
filter. В приведенном примере используется свойство
'basePath' равное
'application.assets'. Это значит что скрипт
item.js хранится в папке
protected/assets/js/. При обращении происходит публикация этих ресурсов и на странице мы увидим обращение к опубликованному скрипту
/assets/d03789dg/js/item.js.
Вместо свойства
'basePath' можно использовать
'baseUrl', при этом конечный URL скрипта будет
<baseUrl>/js/item.js.
Подключаются они во вьюшке так:
Yii::app()->clientScript->registerPackage('item');
Статья по теме, из нее и взяты фрагменты кода.