kriss / yii2-alert-notify
Yii2 Alert Notify
v1.1
2019-11-08 02:52 UTC
Requires
- yiisoft/yii2: ~2.0.0
This package is auto-updated.
Last update: 2024-09-08 13:34:53 UTC
README
Yii2 Alert Notify
安装
composer require kriss/yii2-alert-notify -vvv
Ajax 通知的使用
- 创建一个控制器,例如
AjaxController
,然后添加动作
public function actions() { $actions = parent::actions(); $actions['notify'] = [ 'class' => AjaxNotifyAction::class, 'generateInfo' => 'generateNotifyInfo', ]; return $actions; }
- 在控制器中编写
generateNotifyInfo
,这是一个示例
public function generateNotifyInfo($from) { $info = []; // get info from db or other storage // example if (random_int(0, 999) > 300) { $info[] = [ 'notifyOptions' => [ 'message' => date('H:i:s') . ':Has New Message', 'url' => Url::to(['site/index']), 'target' => '_self', ], 'notifySettings' => [ 'delay' => 0, 'type' => 'info', 'offset' => [ 'x' => 20, 'y' => 70, ], ], 'audioConfig' => [ 'url' => Yii::getAlias('@web/audio/sound1.mp3'), 'count' => 1, 'delay' => 1000, ], ]; } // example End return $info; }
- 在视图中使用小部件,例如
layouts/main.php
<?= AjaxNotifyWidget::widget() ?>
- 刷新浏览器后,您将看到
Ajax 通知 generateInfo
结果描述
-
notifyOptions:查看 bootstrap-notify 选项
-
notifySettings:查看 bootstrap-notify 设置
-
audioConfig
-
url:音频源
-
count:音频播放次数
-
delay:音频播放结束后到下次播放之间的时间,单位
ms
-
Flush 通知的使用
- 在视图中使用小部件,例如
layouts/main.php
<?= FlushNotifyWidget::widget() ?>
- 在控制器或服务中添加 flush 消息
Yii::$app->session->addFlash('success', 'Operate Success'); Yii::$app->session->addFlash('danger', 'Operate danger'); Yii::$app->session->addFlash('error', 'Operate error');
- 刷新浏览器后,您将看到