@gigabits

Как подгружать css и js в yii?

Создал js файл скажем alternative.js в /app/web/js/. При первом вызове скрипта он клонируется в неизвестное мне место. И работать с файлом не возможно пока не переименуешь его. При переходе на site.domain/js/alternative.js так же отображается файл без внесенных изменений. Как решить данную проблему? Очистка кэша не дала результата.
  • Вопрос задан
  • 214 просмотров
Пригласить эксперта
Ответы на вопрос 2
Смотрите ассеты
Ответ написан
Комментировать
@kalyabus
Для того, чтобы файл не клонировался, необходимо настроить компонент assetManager в конфиге:

return [
    ...
    'components' => [
        ...
        'assetManager' => [
            ...
            'linkAssets' => true,
            ...
       ],
       ...
    ]
];


Тогда файлы из AssetsBundle не будут копироваться, вместо этого на них будут создаваться symlink

При первом вызове скрипта он клонируется в неизвестное мне место

Все файлы клонируются (или на них создаются симлинки) в папку, указанную в переменной basePath AssetsBundle, например:

class FrontendAssets extends AssetBundle
{
    public $sourcePath = '@app/_assets';
    public $basePath = '@webroot/assets'; // вот сюда они будут сохраняться, @webroot - соответственно алиас пути, конфигурируемый в основном конфиге

    public $css = [
        'css/styles.min.css',
    ];

    public $depends = [
        'yii\web\JqueryAsset',
        'yii\web\YiiAsset',
        'yii\bootstrap\BootstrapAsset',
    ];
}
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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