Как собрать и минифицировать CSS и JS в Yii2?
Как собрать и минифицировать CSS и JS в Yii2?
Если я верно понимаю, то в yii2 отключена автоматическое использование сжатых библиотек в prodaction, как это было в yii1, вместо этого добавлен AssetBundle, но как им пользоваться не совсем понимаю. Вроде в официальной документации - www.yiiframework.com/doc-2.0/guide-assets.html имеется раздел Compressing and combining assets и теперь минификация и сборка отдана в консоль, делаю по инструкции и не понимаю откуда берется файл /path/to/myapp/config/assets_compressed.php и что в нем должно быть. Возможно кто-то ткнет носом или подскажет в каком направлении гуглить?
- samdark
- Администратор
- Сообщения: 9489
- Зарегистрирован: 2009.04.02, 13:46
- Откуда: Воронеж
- Контактная информация:
Re: Как собрать и минифицировать CSS и JS в Yii2?
Наберите в консоли yii help asset.
Нравится Yii? Давайте сделаем его лучше!.
Re: Как собрать и минифицировать CSS и JS в Yii2?
Ага, набирал, создал шаблон в консоли, в нем указал basePath и на сколько я понимаю для тестирования остальное можно оставить без изменений. А вот откуда берется bundleFile и что в него писать я не совсем понимаю, вернее догадываюсь что он должен быть похож на /assets/AppAsset.php но как его описать ума не приложу. Если это критично, то я использую basicSam Dark писал(а):Наберите в консоли yii help asset.
Хотя видимо не совсем так, создал пустой класс и стал ругаться на отсутствие компиляторов
Код: Выделить всё
namespace app\config;
class AllAssets extends \yii\web\AssetBundle
{
}
Re: Как собрать и минифицировать CSS и JS в Yii2?
Вроде немного вопрос прояснился, в созданном конфиге указываем какие bundles нам нужно пожать, в targets указываем какой использовать файл, ну и вносим настройки (вот только пока не понимаю почему он не хочет использовать стандартный /assets/AppAssets.php ругается на @web указанный в нем, хотя вроде из конфига по сжатию должно переопределить было).
Но это все ладно, теперь главный вопрос как сделать так, чтобы минифицированный файл использовался в основном приложении, ручками указывать путь?
Но это все ладно, теперь главный вопрос как сделать так, чтобы минифицированный файл использовался в основном приложении, ручками указывать путь?
Re: Как собрать и минифицировать CSS и JS в Yii2?
у меня тоже вопрос возник по теме
можно ли только собирать файлы в месте без компресии? т.к. не всегда есть возможность ставить копрессоры на сервак.
можно ли только собирать файлы в месте без компресии? т.к. не всегда есть возможность ставить копрессоры на сервак.
Re: Как собрать и минифицировать CSS и JS в Yii2?
а зачем их устанавливать? это же 2 jar файла, я их просто скопировал в директорию и указал к ним путь, но так или иначе ваш вопрос тоже интересенastronin писал(а):у меня тоже вопрос возник по теме
можно ли только собирать файлы в месте без компресии? т.к. не всегда есть возможность ставить копрессоры на сервак.
Re: Как собрать и минифицировать CSS и JS в Yii2?
Чтобы минифицированные файлы появились на исопльзуемых страницах нужно в конфиге приложения указать путь к сгенерированному php файлу, в моем случае так:
Осталось разобраться как сделать так чтобы он не собирал на тестовом сервере и использовал стандартный AppAsset.php а на prod генерировал из этого AppAsset.php общую js и css
Код: Выделить всё
'assetManager' => [
'bundles' => require '../assets/test.php',
],
Re: Как собрать и минифицировать CSS и JS в Yii2?
Сделал так. В файле /web/index.php
Код: Выделить всё
if(!YII_DEBUG)<===
$config['components']['assetManager'] = ['bundles' => require '../config/assets_compressed.php'];<===
(new yii\web\Application($config))->run();
-
- Сообщения: 1
- Зарегистрирован: 2015.04.20, 11:22
Re: Как собрать и минифицировать CSS и JS в Yii2?
подскажите как быть? и как в теле сеттера правильно будет произвести само присваивание, setAttribute('doc_id', $value) ????
- samdark
- Администратор
- Сообщения: 9489
- Зарегистрирован: 2009.04.02, 13:46
- Откуда: Воронеж
- Контактная информация:
Re: Как собрать и минифицировать CSS и JS в Yii2?
Aliraza951, ваш вопрос как-то относится к теме «Как собрать и минифицировать CSS и JS в Yii2?»?
Нравится Yii? Давайте сделаем его лучше!.
Re: Как собрать и минифицировать CSS и JS в Yii2?
Ищу работу: viewtopic.php?f=31&t=50584
GitHub: https://github.com/mirocow
Стоимость работ: от $30 час
тел/vbr/wsp: +7 (925) 514-63-53
skype/tlgrm: Mirocow
email: [email protected]
PHP Senior Developer aka Mirocow
GitHub: https://github.com/mirocow
Стоимость работ: от $30 час
тел/vbr/wsp: +7 (925) 514-63-53
skype/tlgrm: Mirocow
email: [email protected]
PHP Senior Developer aka Mirocow
Re: Как собрать и минифицировать CSS и JS в Yii2?
Здравствуйте,
не стану создавать новую тему, опишу проблему здесь, может кто-то подскажет как правильно сделать..
Использую yii2 advanced template, шаблоны(themes).
Разобрался как минифицировать css и js, а вот как их правильно подключать не совсем понятно.
структура:
/frontend/themes/
/frontend/themes/site/
/frontend/themes/site/assets/all-theme.css (минифицированный файл)
/frontend/themes/site/assets/all-theme.js (минифицированный файл)
/frontend/themes/site/assets/images/logo.jpg
/frontend/themes/site/views/..
Дальше assetmanager копирует ассеты в
/frontend/web/assets/758ffdc0/all-theme.css (минифицированный файл)
/frontend/web/assets/758ffdc0/all-theme.js (минифицированный файл)
/frontend/web/assets/758ffdc0/images/logo.jpg
Подскажите как правильно настроить 'baseUrl' в assets.php.
По дефолту 'baseUrl' => '@web/assets', что не совсем правильно.
Получаем <link href="/assets/all-theme.css" rel="stylesheet"> без /758ffdc0/
не стану создавать новую тему, опишу проблему здесь, может кто-то подскажет как правильно сделать..
Использую yii2 advanced template, шаблоны(themes).
Разобрался как минифицировать css и js, а вот как их правильно подключать не совсем понятно.
структура:
/frontend/themes/
/frontend/themes/site/
/frontend/themes/site/assets/all-theme.css (минифицированный файл)
/frontend/themes/site/assets/all-theme.js (минифицированный файл)
/frontend/themes/site/assets/images/logo.jpg
/frontend/themes/site/views/..
Дальше assetmanager копирует ассеты в
/frontend/web/assets/758ffdc0/all-theme.css (минифицированный файл)
/frontend/web/assets/758ffdc0/all-theme.js (минифицированный файл)
/frontend/web/assets/758ffdc0/images/logo.jpg
Подскажите как правильно настроить 'baseUrl' в assets.php.
По дефолту 'baseUrl' => '@web/assets', что не совсем правильно.
Получаем <link href="/assets/all-theme.css" rel="stylesheet"> без /758ffdc0/
Re: Как собрать и минифицировать CSS и JS в Yii2?
Ищу работу: viewtopic.php?f=31&t=50584
GitHub: https://github.com/mirocow
Стоимость работ: от $30 час
тел/vbr/wsp: +7 (925) 514-63-53
skype/tlgrm: Mirocow
email: [email protected]
PHP Senior Developer aka Mirocow
GitHub: https://github.com/mirocow
Стоимость работ: от $30 час
тел/vbr/wsp: +7 (925) 514-63-53
skype/tlgrm: Mirocow
email: [email protected]
PHP Senior Developer aka Mirocow
-
- Сообщения: 10
- Зарегистрирован: 2015.10.28, 17:24
Re: Как собрать и минифицировать CSS и JS в Yii2?
Подскажите, из-за чего после компрессии перестают работать секции $(document).ready?