вторник, 12 марта 2013 г.

Yii: Использование CClientScript

Класс-компонент 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');

Статья по теме, из нее и взяты фрагменты кода.

Комментариев нет:

Отправить комментарий