yii2——自定义widget


 

如何使用yii2框架自定义widget

 
本教程教你如何自定义widget,widget是view中能被重用的代码块。
创建widget的步骤:
 
1 继承yii\base\Widget.
2 实现yii\base\Widget::init() 和 yii\base\Widget::run()方法
 
@ 创建widget
首先在项目根目录创建  components 目录,然后新建一个 HelloWidget 类。使用此widget,将会展示一条带有username的欢迎信息。如下
 
<?php
namespace app\components;

use yii\base\Widget;
use yii\helpers\Html;

class HelloWidget extends Widget{
    public $message;
    
    public function init(){
        parent::init();
        if($this->message===null){
            $this->message= 'Welcome User';
        }else{
            $this->message= 'Welcome '.$this->message;
        }
    }
    
    public function run(){
        return Html::encode($this->message);
    }
}
?>

init() - should contain the widget properties, run() - should contain rendering result of the widget

 

 
在yii2中展示widget 的内容
 
使用此widget只需在view头部引入  app\components\HelloWidget 命名空间
 

Controller: SiteController.php

<?php
..........
class SiteController  extends Controller
{
    ...........
    public function actionCreatewidget(){
        return $this->render('hellowidget');
    }
    ...........
}
?>

 

View: site/hellowidget.php

<?php
use app\components\HelloWidget;
?>
<?= HelloWidget2::widget(['message' => ' Yii2.0']) ?>

 

OUTPUT

Welcome Yii2.0


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM