Ответ 1
В том числе, как вы упомянули, не приветствуется и определенно не "стиль Yii".
Есть несколько способов сделать это:
1) Используйте пакеты активов. Не обязательно размещать его в пакете AppAsset
. По умолчанию это общий пакет и включен в основной макет, поэтому все включенные активы будут опубликованы во всех представлениях.
Вы можете создать свой собственный AssetBundle.
Обратите внимание, что для внешних активов (находящихся за пределами веб-каталога) вам нужно использовать sourcePath
, иначе - basePath
и baseUrl
.
С двумя параметрами все, что вам нужно сделать в общем случае: заполнить $js
и $css
массивы и $depends
для установки зависимостей, если это необходимо.
Вы можете узнать больше по ссылке ниже.
2) Используйте registerCssFile()
и registerJsFile()
.
Первый подход предпочтительнее и рекомендуется в официальных документах. Это дает вам обработку зависимостей и многое другое.
Официальные документы: