AppAsset + XxxAsset - Порядок закгрузки их ресурсов?
AppAsset + XxxAsset - Порядок закгрузки их ресурсов?
Собственно застрял с разделенем ресурсов из дефолтного AppAsset.php на отдельные.
В основном оставил только те стили и скрипты, что нужно на всех страницах сайт, а в отдельные поместил те ресурсы, что ток там нужно. Проблема заключается в последовательности. AppAsset.php регистрируется в шаблоне сайта, а свои ХххAsset.php во вьюхах приложения/модуля, и как результат из вьюх стили и скрипты грузятся первыми, а должно грузить последним.
Перечитал уже 100* раз доку по Asset'ам, перегуглил кучу сайтов, но так и не понял как правильно сменить последовательность. Вариант с - "ХххAsset::register($this,['depends' => 'app\assets\AppAsset']);" не прокатывает. Порядок отрабатывает если я в каждой вьюхе с начало повторно зарегистрирую AppAsset, а потом ХххAsset, но это костыли.
От сюда и вопрос, можно ли как стандартно поменять порядок, без регистрации AppAsset в каждой вьюхе, где это нужно.
В основном оставил только те стили и скрипты, что нужно на всех страницах сайт, а в отдельные поместил те ресурсы, что ток там нужно. Проблема заключается в последовательности. AppAsset.php регистрируется в шаблоне сайта, а свои ХххAsset.php во вьюхах приложения/модуля, и как результат из вьюх стили и скрипты грузятся первыми, а должно грузить последним.
Перечитал уже 100* раз доку по Asset'ам, перегуглил кучу сайтов, но так и не понял как правильно сменить последовательность. Вариант с - "ХххAsset::register($this,['depends' => 'app\assets\AppAsset']);" не прокатывает. Порядок отрабатывает если я в каждой вьюхе с начало повторно зарегистрирую AppAsset, а потом ХххAsset, но это костыли.
От сюда и вопрос, можно ли как стандартно поменять порядок, без регистрации AppAsset в каждой вьюхе, где это нужно.
-
- Сообщения: 92
- Зарегистрирован: 2015.06.15, 18:36
Re: AppAsset + XxxAsset - Порядок закгрузки их ресурсов?
привет, я использую в классе xxxAsset
Код: Выделить всё
public $jsOptions = ['position' => \yii\web\View::POS_END];
Re: AppAsset + XxxAsset - Порядок закгрузки их ресурсов?
Не работате
Так выводит в начале, как и было
А в кавычках и вообще не выводит.
Код: Выделить всё
public $jsOptions = ['position' => \yii\web\View::POS_END];
Код: Выделить всё
public $jsOptions = ['position' => '\yii\web\View::POS_END'];
-
- Сообщения: 92
- Зарегистрирован: 2015.06.15, 18:36
Re: AppAsset + XxxAsset - Порядок закгрузки их ресурсов?
а вы надеюсь не меняли layout.php ?
там есть что-то подобное
и кстати код указывает явускрипту загрузку в конце
там есть что-то подобное
Код: Выделить всё
<?php $this->endBody() ?>
</body>
</html>
<?php $this->endPage() ?>
и кстати код указывает явускрипту загрузку в конце
Re: AppAsset + XxxAsset - Порядок закгрузки их ресурсов?
Да не, все эти вставки <?php $this->endBody() ?> и прочие на месте, я знаю о их применении, все скрипты в самом низу, всё подключается, только порядок не тот вывода ресурсов из asset'ов.
Вообще, я использую $sourcePath, и если я правильно понимаю гугло перевод документации, то нужно использовать - yii\web\AssetManager::publish()
Вообще, я использую $sourcePath, и если я правильно понимаю гугло перевод документации, то нужно использовать - yii\web\AssetManager::publish()
Последний раз редактировалось SergV 2017.01.23, 19:00, всего редактировалось 1 раз.
-
- Сообщения: 977
- Зарегистрирован: 2014.08.27, 21:54
Re: AppAsset + XxxAsset - Порядок закгрузки их ресурсов?
Прокатывает, если делать правильно.
Код: Выделить всё
namespace app\assets;
use yii\web\AssetBundle;
class AppAsset extends AssetBundle
{
public $basePath = '@webroot'; //алиас каталога с файлами, который соответствует @web
public $baseUrl = '@web';//Алиас пути к файлам
....
public $depends = [
'yii\web\YiiAsset',
'yii\bootstrap\BootstrapAsset',
];
}
Код: Выделить всё
namespace app\assets;
use yii\web\AssetBundle;
class ХххAsset extends AssetBundle
{
....
public $depends = [
'app\assets\AppAsset',
];
}
-
- Сообщения: 977
- Зарегистрирован: 2014.08.27, 21:54
Re: AppAsset + XxxAsset - Порядок закгрузки их ресурсов?
А ваши модули, случаем, не рендерятся в другом layout, где не прописан AppAsset ?
Re: AppAsset + XxxAsset - Порядок закгрузки их ресурсов?
Мля..., во туплю, сколько просидел эксперементируюя, а что бы в depends засунуть 'app\assets\AppAsset', не додумался.
Loveorigami, большое спасибо за подсказку
Loveorigami, большое спасибо за подсказку
skvarovski, спасибо за помощь, вопрос уже решился, всего то надо было ...А ваши модули, случаем, не рендерятся в другом layout, где не прописан AppAsset ?