Как в yii2 подключить в view js файл из модуля, который находится в common/modules…?

Для подключения JavaScript файла из модуля, который находится в директории common/modules, в Yii2 необходимо выполнить следующие шаги:

1. Создайте директорию assets внутри вашего модуля, если она уже не существует. Например, для модуля example, создайте директорию common/modules/example/assets.

2. В директории assets создайте новый файл ExampleAsset.php, который будет представлять собой класс asset для вашего модуля. В этом файле вы можете определить все зависимости и настройки для вашего JavaScript файла. Например:

<?php

namespace commonmodulesexampleassets;

use yiiwebAssetBundle;

class ExampleAsset extends AssetBundle
{
    public $sourcePath = '@common/modules/example/assets/dist';
    public $js = [
        'example.js',
    ];
    public $depends = [
        'yiiwebYiiAsset',
    ];
}

3. В директории dist создайте директорию js (или любую другую подходящую директорию) и поместите в нее ваш JavaScript файл example.js.

4. Во view, где вы хотите подключить этот JavaScript файл, добавьте следующий код:

<?php

use commonmodulesexampleassetsExampleAsset;

ExampleAsset::register($this);

Теперь ваш JavaScript файл будет подключен в нужном view. Вы можете использовать такой подход для подключения любого JavaScript файла из модуля.

Обратите внимание, что в файле ExampleAsset.php указан @common/modules/example/assets/dist в качестве sourcePath. @common является псевдонимом для базовой директории вашего приложения (обычно это директория common). Если псевдоним @common не определен, вы можете использовать полный путь к директории модуля.

Дополнительно, вы можете использовать методы $css и $depends в классе ExampleAsset, чтобы подключить CSS файлы и зависимости, соответственно. Это особенно полезно, если ваш JavaScript файл зависит от других библиотек или файлов стилей.