解决yii2 禁用layout时AppAsset不加载资源的问题

Posted coco

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决yii2 禁用layout时AppAsset不加载资源的问题相关的知识,希望对你有一定的参考价值。

大王派我来巡山_site:http://blog.csdn.net/wang78699425/article/details/52369841

最近由于项目(yii2 的一个项目)需要,登录页面不需要使用布局(layout),使用单独的页面,然后我就在登录视图里面加了一行代码$this->context->layout = false 来禁用layout,同时使用 module\assets\AppAsset::register($this) 来加载资源(css、js等),刷新页面,发现css、js全都未加载进来,懵逼~。
后来调试半天,发现是通过$this->beginPage() 等来引入的,只有在视图上加入几个必需的代码,资源才会引入,代码如下:

<?php
module\assets\AppAsset::register($this);
$this->context->layout = false;
?>

<?php $this->beginPage() ?> <-- 必需 -->
<html>

<-- 视图代码块 -->

<body>
<?php $this->beginBody() ?> <-- 必需 -->

<-- 视图代码块 -->

<?php $this->endBody() ?> <-- 必需 -->
</body>
</html>
<?php $this->endPage() ?> <-- 必需 -->

以上是关于解决yii2 禁用layout时AppAsset不加载资源的问题的主要内容,如果未能解决你的问题,请参考以下文章

yii2 笔记

yii2单个视图加载jss,css

YII2 use appassetsAppAsset; AppAsset 命名空间找不到,因为可能项目中的明明空间不是app 开头 可能是module 名称开头, 自己全局查找 AppAsse

BUG YII2.0 $ is not defined

BUG YII2.0 $ is not defined

yii2 加载静态资源