из всего что я там прочитал, я понял только как js подключать в приложение. Но это я и раньше знал как, только в этом случае скрипт будет подключаться к каждой странице а мне этого не нужно.
расширение мне тоже не подходит, т.к.: 1. я еще не разобрался толком как их создавать. 2. для их развертывания нужен GitHub или аналог. я же создал обычный класс наследник widget
и хотелось бы на вьюшках не заморачиваться(не запоминать какой скрипт и где подрубить) а достаточно было добавить нужный widget и все, а он уже сам подключал/не подключал скрипты.
сейчас я использую echo для добавления скрипта, но если виджет использовать несколько раз то и скрипт появляется несколько раз.
а хотелось бы только один раз.
смотрел как подключаются у расширений в папке vendor
но там тоже не особо пролило мне свет.
в одном например нашел такой код в методе run():
Код: Выделить всё
$view = $this->getView();
DepDropAsset::register($view)->addLanguage($this->language, 'depdrop_locale_');
...
$view->registerJs("initDepdropS2('{$id}','{$loading}');");
но я делал так же, разве что у меня не было класса "*Asset", но у меня и файлов js нет, да и смысла как бы большого нет, т.к. ф-ция специфична только для данного виджета и добавлять еще куда-то я точно не буду