Почему скрипты не записываются в папке assets?

в common/widget создал виджет подключил свой ассет таким образом

public function init()
    {
        ModalAssets::register($this->getView());
    }

вот сам ассет
class ModalAssets extends AssetBundle
{
    public $publishOptions = [
        'forceCopy' => YII_DEBUG,
    ];
    //public $basePath = '@backend/widgets/companyModal';
    public $sourcePath = __DIR__ . '/assets';
    public $baseUrl = '@web';
    public $css = [];

    public $js = [
        '/js/modal.js'
    ];
    public $depends = [
        YiiAsset::class,
        BootstrapAsset::class,
    ];
}

но почемуто скрипт не записывается в папке assets и браузере показывает подключение

Подскажите почему ?
  • Вопрос задан
  • 46 просмотров
Пригласить эксперта
Ответы на вопрос 1
slo_nik
@slo_nik Куратор тега Yii
Доброе утро.
Попробуйте перенести ModalAssets::register($this->getView()); в метод run();
В ModalAssets, в методе init()
public function init()
    {
        $this->sourcePath = __DIR__ . '/assets';
        parent::init();
    }

Структура виджета.
assets /* js and css */
view /* view widget */
ModalWidget.php
ModalAssets.php

Первый слеш лишний
public $js = [
   '/js/modal.js'
]
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы