Widgets
Les widgets sont des unités réutilisables utilisées dans les vues, utilisant une méthode orientée objet pour créer des et des éléments d'interface utilisateur configurables. (Apprentissage recommandé : framework yii)
Par exemple, le widget de sélecteur de date peut générer un sélecteur de date exquis qui permet aux utilisateurs de sélectionner des dates. Il vous suffit d'insérer le code suivant dans la vue. :
<?php use yii\jui\DatePicker; ?> <?= DatePicker::widget(['name' => 'date']) ?>
Yii fournit de nombreux excellents widgets, tels que des formulaires actifs, des menus, des widgets jQuery UI et des widgets Twitter Bootstrap. Ensuite, nous présenterons les connaissances de base des widgets. Si vous souhaitez en savoir plus sur un certain widget, veuillez vous référer au document API de classe correspondant.
Utilisation de widgets
Les widgets sont essentiellement utilisés dans les vues, et la méthode yiibaseWidget::widget() peut être appelée dans la vue pour utiliser des widgets. Cette méthode initialise le widget à l'aide du tableau de configuration et renvoie le résultat du rendu du widget.
Par exemple, le code suivant insère un widget de sélecteur de date, configuré pour utiliser le russe, et le contenu de la zone de saisie est la valeur de l'attribut from_date de $model.
<?php use yii\jui\DatePicker; ?> <?= DatePicker::widget([ 'model' => $model, 'attribute' => 'from_date', 'language' => 'ru', 'dateFormat' => 'php:Y-m-d', ]) ?>
Certains widgets peuvent utiliser le contenu des données dans les appels yiibaseWidget::begin() et yiibaseWidget::end().
Par exemple, le code suivant utilise le widget yiiwidgetsActiveForm pour générer un formulaire de connexion. Le widget générera la balise de début et la balise de fin de ff9c23ada1bcecdd1a0fb5d5a0f18437 . Tout code au milieu sera également rendu.
<?php use yii\widgets\ActiveForm; use yii\helpers\Html; ?> <?php $form = ActiveForm::begin(['id' => 'login-form']); ?> <?= $form->field($model, 'username') ?> <?= $form->field($model, 'password')->passwordInput() ?> <div class="form-group"> <?= Html::submitButton('Login') ?> </div> <?php ActiveForm::end(); ?>
Notez que le résultat du rendu renvoyé en appelant yiibaseWidget::widget() est différent. L'appel de la méthode yiibaseWidget::begin() renvoie une instance de widget qui peut être utilisée pour construire le contenu du widget.
Remarque : Lors de l'appel de yiibaseWidget::end(), certains widgets utiliseront la mise en mémoire tampon de sortie pour ajuster le contenu inclus. Par conséquent, lorsque vous appelez yiibaseWidget::begin() et yiibaseWidget::end(), il est préférable d'être dans le même fichier de vue. Le non-respect de cette règle peut entraîner une sortie inattendue.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!