Настоятельно рекомендуется использовать пакеты активов для регистрации внешних файлов JS, а не registerJsFile(), поскольку они обеспечивают лучшую гибкость и более подробную конфигурацию зависимостей. Кроме того, использование пакетов активов позволяет комбинировать и сжимать несколько JS-файлов, что желательно для сайтов с высоким трафиком.
Итак, вы можете создать новый файл AppAsset и поместить в него свои файлы css и javascript.
Создание активов Bundle
В каталоге \ активов, мы создаем StatusAsset.php:
<?php
/**
* @link http://www.yiiframework.com/
* @copyright Copyright (c) 2008 Yii Software LLC
* @license http://www.yiiframework.com/license/
*/
namespace app\assets;
use yii\web\AssetBundle;
/**
* @author Qiang Xue <[email protected]>
* @since 2.0
*/
class StatusAsset extends AssetBundle
{
public $basePath = '@webroot';
public $baseUrl = '@web';
public $css = [];
public $js = [
'/js/jquery.simplyCountable.js',
'/js/twitter-text.js',
'/js/twitter_count.js',
'/js/status-counter.js',
];
public $depends = [
'yii\web\YiiAsset',
'yii\bootstrap\BootstrapAsset',
];
}
В файле просмотра
use app\assets\StatusAsset;
StatusAsset::register($this);
Ресурсы http://www.yiiframework.com/doc-2.0/guide-output-client-scripts.html https://code.tutsplus.com/tutorials/how-to-program-with-yii2-working-with-asset-bundles--cms-23226
Это wo не добавляйте к определенному действию. Это общая процедура для добавления js-файла для просмотра. Чтобы добавить на основе идентификатора действия, возможно, потребуется перейти с событием afterAction. –