黑马程序员技术交流社区

标题: 封装layer弹窗到thinkphp替换tp默认消息提示模板 [打印本页]

作者: mangoboy    时间: 2018-8-31 18:27
标题: 封装layer弹窗到thinkphp替换tp默认消息提示模板
本帖最后由 mangoboy 于 2018-8-31 18:35 编辑

第一步:封装layer函数到tp5的公共函数中,引入对应的插件资源(先引入jq,再引入layer,先后顺序不能错)
// layer
/**
* $msg 待提示的消息
* $url 待跳转的链接 不填写默认不刷新返回上一页
* $icon 这里主要有两个,1打钩,2打错, 3?号,  4上锁,  5哭,6
* $time 弹出维持时间(单位秒)
*/
function layer($msg='',$url='',$icon='',$time=2){
    $str='<script type="text/javascript"src="'.config('layer')['jq'].'"></script><scripttype="text/javascript" src="'.config('layer')['js'].'"></script>';//加载jquerylayer
    if ($url == '') {
$str.='<script>$(function(){layer.msg("'.$msg.'",{icon:'.$icon.',time:'.($time*1000).'});setTimeout(function(){window.history.go(-1);},2000)});</script>';//主要方法
    } else {
     $str.='<script>$(function(){layer.msg("'.$msg.'",{icon:'.$icon.',time:'.($time*1000).'});setTimeout(function(){self.location.href="'.$url.'"},2000)});</script>';//主要方法
    }   
    return $str;
}
第二步:在config配置文件中定义资源路径
// layer配置
'layer' => [
    'jq' =>'/static/home/js/jquery-1.8.3.min.js', // 换成你自己的jq资源路径
    'js' => '/static /plugins/layer/layer.js',// 换成你自己的layer资源路径

],

第三步:控制器 调用layer方法, return 函数名(传递对应参数)
return layer('添加用户成功', url("/admin/user/index"), 1,2);

其他插件也可以依照类似方法就行封装。







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2