php网站内容管理系统(实例看一下layui框架的模块是如何发挥作用的(组图))
优采云 发布时间: 2022-01-30 11:13php网站内容管理系统(实例看一下layui框架的模块是如何发挥作用的(组图))
本文主要使用前端框架layui的layPage模块在基于ThinkPHP5的内容管理系统中实现分页。关于前端框架layui,介绍不多,可以参考文章《你的隔壁程序员推荐一款优秀的模块化UI框架——Layui》。
Layui的分页模块laypage提供了比较完善的分页逻辑,既可以作为异步分页,也可以作为页面刷新分页。使用非常简单:
第一步是显示分页在HTML页面中的位置,并添加一个div作为存储分页的容器。例如:
第二步是加载laypage模块。如果layui框架采用模块化部署,需要通过layui.use('laypage');加载laypage模块;
如果使用非模块化部署,可以直接定义 varlaypage=layui.laypage。
第三步,在javascript代码块中,通过服务器获取的一些初始化值完成分页的渲染:
laypage.render({
elem: 'pages',
count: 50
});
这只是最基本的使用方法。下面我们通过一个例子来看看layui框架的分页模块是如何工作的。首先我们看一下基于thinkphp5+前端框架layui的第一个文章管理函数:
本例中使用laypage实现分页功能的相关js代码如下:
其中,我从服务器获取了三个值,limit、count、page,分别是当前页面大小,即每页显示的记录数;count,记录总数;page,当前页码。因为我想实现可以选择每页显示的项目数,需要的限制必须从服务器获取,如果没有给出当前页,页码显示就会有问题。
实现了分页切换功能,最重要的是obj和first这两个参数。obj收录当前分页的所有参数,如: obj.curr:当前页面,从而向服务器请求对应页面的数据;obj.limit:每页显示的条数。first表示是否为第一次,用于判断初始加载。
其中,layout是自定义布局。根据layui官方文档,可选值有:count(总入口输入区域)、prev(上一页区域)、page(分页区域)、next(下一页区域)、limit(入口选项区域)、skip (快捷页面跳转区)。
在这个例子中,分页后台处理程序 thinkphp5 的代码是:
thinkphp5的这个分页查询的代码就不做解释了。