直接使用
$assets_url=$this->assetBundles[AppAsset::register($this)::className()]->baseUrl;
封装调用
/**
* 获取生成asset的资源文件目录
*
* @param string $assets
* @return string
*/
public static function filePath($assets = '')
{
if (!$assets) {
$assets = [];
$assets[] = 'addons';
$assets[] = Yii::$app->params['addon']['name'];
$assets[] = Yii::$app->params['realAppId'];
$assets[] = 'assets';
$assets[] = 'AppAsset';
$assets = implode('\\', $assets);
}
if (!isset(Yii::$app->view->assetBundles[$assets])) {
/* @var $assets \yii\web\AssetBundle */
$assets::register(Yii::$app->view);
}
return Yii::$app->view->assetBundles[$assets]->baseUrl . '/';
}
直接调用
use common\helpers\AddonHelper;
$path = AddonHelper::filePath();