Si consiglia vivamente di usare fasci di attività per registrare file JS esterni piuttosto che registerJsFile() perché questi consentono una maggiore flessibilità di configurazione e la dipendenza più granulare. Inoltre, l'utilizzo di bundle di asset consente di combinare e comprimere più file JS, il che è auspicabile per i siti Web con traffico elevato.
in modo da poter creare un nuovo file AppAsset e mettere il vostro CSS e JavaScript file in essa contenuti.
Creare l'Asset Bundle
nella directory \ attivi, creiamo 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',
];
}
Nel file vista
use app\assets\StatusAsset;
StatusAsset::register($this);
Risorse 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
fonte
2017-08-23 07:49:02
Questo wo non aggiungere ad azioni specifiche .. questa è una procedura generica per aggiungere un file js da visualizzare. Per aggiungere in base all'ID azione, potrebbe essere necessario seguire l'evento afterAction. –