Yii2的相关学习记录,alert等美化、confirm异步、session中的flash及小部件的使用(六)

呃,系统自带的alert、confirm等弹出框实在是难看,作为一个颜控,这能忍?

这里我用的是kartik-v/yii2-dialog,这个是基于bootstrap3-dialog这个来做了一些常用alert、confirm和dialog的小部件封装,当然了,本质上还是bootstrap3-dialog,可以用原生的方法,原生方法的用法点这里,而bootstrap3-dialog又是基于bootstrap3的modals做的封装。嗯,基本关系就是这样。在搜索这个相关知识时,经常会看到有人提到bootbox,这个同样是流行的一个美化插件,基本原理类似,用法稍微不同,在packagist搜索yii2 bootbox会发现也有人为Yii2做了集成(或者自己集成也行,后面会讲到),同样值得推荐。

按照说明安装,最好是按照github的说明,因为最新的一般都会在这里先更新。composer中要用@dev。可以看这里的说明,如果不成功,先composer self-update,再试下,当初安装时也是各种报错不行,后来突然就好了。稍微注意的是confirm,dialog调用时要求必须写回调,否则就报错。

aaarticlea/png;base64,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" alt="" />

还是蛮漂亮的。但是像是Yii框架Gridview自带的confirm(像是删除按钮),点击时还是原生的,因为它的源码就是用的confirm命令,好在Yii框架提供了方法,可以让我们覆盖confirm方法。具体可如下操作:

1、我们可以先看下在vendor/yiisoft/yii2/assets/yii.js文件中的confirm方法:注释中就可以看到,可以用yii.confirm来重写此设置。

 /**
* Displays a confirmation dialog.
* The default implementation simply displays a js confirmation dialog.
* You may override this by setting `yii.confirm`.
* @param message the confirmation message.
* @param ok a callback to be called when the user confirms the message
* @param cancel a callback to be called when the user cancels the confirmation
*/
confirm: function (message, ok, cancel) {
if (confirm(message)) {
!ok || ok();
} else {
!cancel || cancel();
}
},

2、那我们就重写,可以在backend/web/js中新建confirm.js文件,然后重新,可参照此文章,这是设置bootbox的,而且版本有点过时,不过下方的评论有最新方法。而我们的设置与此原理是一致的,只不过是改成kartik-v/yii2-dialog所需求的参数样式:

yii.confirm = function (message, ok, cancel) {
krajeeDialog.confirm(message,function(data){
if (data) {
!ok || ok();
} else {
!cancel || cancel();
}
});
// confirm will always return false on the first call
// to cancel click handler
return false;
}

3、我们需要注册此js,可以在backend/assets/Appasset.php中添加上方的js文件:

class AppAsset extends AssetBundle
{
public $basePath = '@webroot';
public $baseUrl = '@web';
public $css = [
'css/site.css',
];
public $js = [
'js/confirm.js',//就是这里了
];
public $depends = [
'yii\web\YiiAsset',
'yii\bootstrap\BootstrapAsset',
];
}

这样一来,在点击删除按钮便会发现可以调用了:aaarticlea/png;base64,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" alt="" />

由于我们用的是kartik-GridView,它的两个功能展示全部记录和导出csv等的提示,都是用的原生的confirm,强迫症的我们能忍吗?好吧,我忍了,这里只给出改的思路,尤其是只懂基础js的我来说,先把时间放在其它地方吧。(2017.03.31注:3.1.2版本以上的kartik-GridView中会自动带有yii2-dialog来提示,所以下面修改js什么的没什么用了。)

在改之前,首先我们需要明确kartik-v/yii2-dialog的confirm(bootbox同样)和原生confirm的不同。原生confirm是同步的,而kartik-v/yii2-dialog的confirm方法是异步回调的。这导致原生的confirm可以直接这样写:

function abc(){
return window.confirm('123');//confirm点击确认返回true,取消返回false,不点击就等着用户点击
}
if(abc()){
alert('456');//点击是,会弹出alert弹窗
}

而如果你用kartik-v/yii2-dialog的confirm也这样写,则永远不会弹窗,因为是异步回调的,不会去等你点击。

function abc(){
krajeeDialog.confirm('123',function(result){
if(result){
return true;
}else{
return false;
}
});
}
if(abc()){
alert('456');//由于是异步回调,所以不管点不点都不会弹窗
}

可能有人会想(比如我)这样写行不行?不行,不支持这样的写法,bootstrap3-dialog中这样写返回的是窗口有没有open。

if(krajeeDialog.confirm('123',function(result){}){
return true;
}else{
return false;
}

所以要想在kartik-v/yii2-dialog的confirm中执行alert,只能将alert放在回调函数中:

function abc(){
krajeeDialog.confirm('123',function(result){
if(result){
alert('456');
}else{
//do something
}
});
}

以上的不同,再加上是在vendor中修改有违原则啊(拿出来很费劲,又是继承什么的,而导出csv的js没找到类似yii.js那样覆盖的方法,只能重新写引入什么的),也是我不想改源码的原因。坑爹。好吧,下面继续说怎么改:

1、{toggleData}显示全部记录,它的调用confirm是在vendor/kartik-v/yii2-grid/GridView.php中的getToggleDataScript方法,我们修改return就可以:

$url=Url::current([$this->_toggleDataKey => $tag]);//先定义需要跳转的url
return "\$('#{$this->_toggleButtonId}').on('{$event}',function(e){
e.preventDefault();//先阻止点击事件
krajeeDialog.confirm('{$msg}',function(data){
if (data) {
window.location.href='{$url}';//点击是则跳转
}
});
//下面这条是原来的方法
// if(!window.confirm('{$msg}')){e.preventDefault();}
});";

2、{export}中的导出提示,是在vendor/kartik-v/yii2-grid/assets/js/kv-grid-export.js中:这个就麻烦了,感觉需要重写关联的notify方法和listenClick方法。谁写完了,麻烦告诉一声吧。

kvConfirm: function (msg) {
try {
return window.confirm(msg);//调的这个
}
catch (err) {
return true;
}
}

上面就这样吧。

下面说下session中的flash,我们一般创建完成等操作时,需要给点提示是完成了还是怎么着。在Yii中有自带flash方法来实现,可点击这里查看,其实在adminLTE这个后台框架中已集成了Alert小部件,我们可以在backend/views/layout/content.php中发现此小部件的调用<?= Alert::widget() ?>,这是我们只需要在controller中添加setFlash方法,那么就能在view中接收到:

  public function actionCreate()
{
$model = new User(); if ($model->load(Yii::$app->request->post()) && $model->save()) {
$session = Yii::$app->session;//session
$session->setFlash('success', '创建成功');//添加flash
return $this->redirect(['index']);
} else {
return $this->render('create', [
'model' => $model,
]);
}
}

捕捉到的:(adminLTE的alert样式颜色就是这么深,而Yii框架自带的颜色虽然浅,但是与此后台框架的颜色也不搭配)aaarticlea/png;base64,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" alt="" />

进一步扩展就是,如果是成功的提示,那我5s后可以隐藏,那可以这样设置,在backend/views/layout/content.php中添加下面渐隐的js代码

<?php //这是一段,在显示后定里消失的JQ代码
$this->registerJs("
$('.alert-success').animate({opacity: 1.0}, 5000).fadeOut('slow');
");
?>

唉?为什么突然说到flash,明显前后文不统一吗,差评!主要是,既然有alert形式的flash,那当然也可以用弹窗的方式来展示啊。kartik-v/yii2-dialog虽然有alert、dialog功能,但是在这里都和我想要的不太一样,所以我们直接调用原生的方法来写,主要的方法是这样:(下面有详细封装)

var dialogShow=BootstrapDialog.show({
type:BootstrapDialog.TYPE_SUCCESS,
title:'提示消息',
message:'创建成功,3s后自动关闭',
size:BootstrapDialog.SIZE_SMALL,
buttons:[
{
label: '关闭',
action: function(dialogItself){
dialogItself.close();
}
}
]
});

我们当然可以直接在index.php中写,但是东西有点多,最好封装一下,好吧,那就参照Alert来写一个Popup的widget来用吧:(一些介绍点这里),在common/widgets中新建Popup.php,直接贴代码吧。由于只是注册js,没有返回值什么的,所以没有用到run()方法。

 <?php

 namespace common\widgets;

 class Popup extends \yii\bootstrap\Widget
{
/**
* 样式数组
* @var [type]
*/
public $popupTypes = [
'default' => 'BootstrapDialog.TYPE_DEFAULT',
'info' => 'BootstrapDialog.TYPE_INFO',
'primary' => 'BootstrapDialog.TYPE_PRIMARY',
'success' => 'BootstrapDialog.TYPE_SUCCESS',
'warning' => 'BootstrapDialog.TYPE_WARNING',
'danger' => 'BootstrapDialog.TYPE_WARNING'
];
/**
* 尺寸数组
* @var [type]
*/
public $sizeTypes=[
'nomal'=>'BootstrapDialog.SIZE_NORMAL',
'small'=>'BootstrapDialog.SIZE_SMALL',
'wide'=>'BootstrapDialog.SIZE_WIDE',
'large'=>'BootstrapDialog.SIZE_LARGE' ];
/**
* 标题
* @var [type]
*/
public $title;
/**
* 尺寸
* @var [type]
*/
public $size; public function init()
{
parent::init();
//默认标题
if ($this->title === null) {
$this->title = '消息提示';
}
//默认样式
if ($this->size===null || !isset($this->sizeTypes[$this->size])){
$this->size='small';
} $session = \Yii::$app->session;
$flashes = $session->getAllFlashes(); $view = $this->getView(); foreach ($flashes as $type => $data) {
if (isset($this->popupTypes[$type])) {
$data = (array) $data;
foreach ($data as $i => $message) {
$view->registerJs("
var dialogShow=BootstrapDialog.show({
type:".$this->popupTypes[$type].",
title:'".$this->title."',
message:'".$message."',
size:".$this->sizeTypes[$this->size].",
buttons:[
{
label: '关闭',
action: function(dialogItself){
dialogItself.close();
}
}
]
});
");
// 如果是成功,需要增加3s后自动关闭,其余警告等则不需要
if($type=='success'){
$view->registerJs("
setTimeout(function(){ dialogShow.close() }, 3000);
");
}
} $session->removeFlash($type);
}
}
}
}

太长隐藏

然后在backend/views/layout/content.php引用小部件:

use common\widgets\Popup;
<?= Popup::widget([
'title'=>'消息',
'size'=>'small'//参数不写会有默认值
]) ?>

看下效果:如果是success,则会自动消失。

aaarticlea/png;base64,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o3b1KA05tlNq9mv8MtLfZY3SZogWAIAh0aXiVAu3tPKY6k+bUUtZiPQDdKJLxalObBnANtm2NkOOsnBI0l/It5xsqPtSPd5G1m1G+kttHm33rDbP1Y4N6YeBcdbeo47im+/oNS20b+/p2/hlpL/Tw/T8AgyVXibJXdncDJma+1trUL/DBukH6ES3itNvzDU297e2quu970Me6TfNwGNY2XIyoB9D+55+7VHr2YKdmvfd3oP0Q684vpHXvnun08yblkn3e53cE+lvA3fuAgybrr8Q1SYek5i36H2zNttJvLElT9kk0g+TSPeKs06RadfT3xTfDj36WfONud2kXx/yN24hls+ph9Taq2MZs285BzBsp9v9vs2jst5PbH8jL9IPveJkyk59Ah9zA4/W3G9r/IV0TpabU/H0MZ0/0m+PYX5AvqALYDj02FBn7to3zMhjrcQOEq+vrszRifTDJNK94szzYxq91vDVV23uXm2Z/0dtBCroo+adThKag/rNqXva331r06hjmGHTdJJgN/Om5aqCPmVn1yci/dAPgr6cK3egXxxIp/r7Aq++pP//A8e3Rlz0XoftAAAAAElFTkSuQmCC" alt="" />

那弹出框Popup和提示Alert最大区别是,当存在addFlash方法时,Alert可以依次排列显示多个,而弹出框Popup则会重复覆盖显示,不太友好。当然了在不用addFlash方法时弹出框Popup的显示更漂亮醒目。

好了,就这样,睡觉先!

上一篇:2、二进制安装K8s 之 部署ETCD集群


下一篇:【素数】 poj 2739 一个数能有多少种连续素数相加方案