YII2中theme的一些问题 [ 2.0 版本 ]
高级版本,我打算前端通过主题,themes来制作多个模版,现在遇到的问题是,每个主题的资源文件,如css,js,img等这些文件,我是应该放在哪个位置比较合适。
我原本打算是这样放的
资源文件:/frontend/themes/default/views/dist
视图文件:/frontend/themes/default/views
web目录:/frontend/web
然后在预览前端页面的时候,发布到/frontend/web/assets里,但是,这里就遇到问题了,如何发布到assets。
我查看了下AppAsset.php中的依赖包里面的资源会自动发布到assets中,请高手指导下。
备注:这样一个主题给其他项目用的时候,只要把default给复制出来就可以了,但是看了yii2里的Theme.php介绍,意思是资源文件放到/frontend/web下面,然后我不知道该怎么弄了。
共 2 个回答
-
不用放到web下,你可以在 themes\default 目录下 创建个 AppAsset.php 文件,内容如下。
namespace frontend\themes\default; use yii\web\AssetBundle; class AppAsset extends AssetBundle { public $sourcePath = '@app/themes/default/views/dist'; public $css = [ 'css/site.css', ]; public $js = [ ]; public $depends = [ 'yii\web\YiiAsset', 'yii\bootstrap\BootstrapAsset', ]; }
布局或视图文件中使用 \frontend\themes\default\AppAsset::register($this)
就可以把 themes/default/views/dist 下的内容发布到 assets 目录下了。
lzxassj
注册时间:2012-08-02
最后登录:2016-03-03
在线时长:4小时28分
最后登录:2016-03-03
在线时长:4小时28分
- 粉丝3
- 金钱20
- 威望0
- 积分60