限时 5折! 详情

yii2项目实战-小部件widget的了解以及源码分析

4076 0 0

什么是widget

我们先来介绍下什么是widget:widget,正如其字面上的含义,小部件。

简单的说widget就是一个php类,可以理解为widget是一个对视图单元封装的类。什么是视图单元呢?大家经常用到的表单、日期、导航、菜单等等等都可以理解为视图单元。本文我们以yii\widgets\ActiveForm为例,了解ActiveForm原理的同时,逐步深入的来了解一下widget。

ActiveForm小部件的分析

先来看看这个ActiveForm小部件的使用

<?php $form = ActiveForm::begin(); ?>

<?= $form->field($model, 'title')->textInput(['maxlength' => true]) ?>

<?php ActiveForm::end(); ?>

我们就从这三行代码入手分析。

找到 vendor\yiisoft\yii2\widgets\ActiveForm.php,划重点啦,认真的看哦。

class ActiveForm extends Widget 
{
}

通过ActiveForm的定义我们看到,该类继承 yii\base\Widget,注意这是所有小部件的鼻祖,后面我们想自己写小物件

继续阅读

还有66%的精彩内容,购买继续阅读