wecenter学习笔记-分页组件的实现

该文是wecenter学习笔记的一部分

分页组件的实现

分页是列表展示常见的需求,因而wecenter提供了一个基础的分页工具类 core_pagination

根据以下基本参数

  • base_url
  • total_rows
  • per_page

生成一个分页导航视图(html)

使用

TPL::assign('pagination', AWS_APP::pagination()->initialize(array(
                'base_url' => get_js_url('/admin/approval/list/type-' . $_GET['type']),
                'total_rows' => $found_rows,
                'per_page' => $this->per_page
            ))->create_links());
<span class="pull-right mod-page"><?php echo $this->pagination; ?></span>

实现

自定义参数

views/default/config/pagination.php

$config = array(
    'first_link' => '<<',
    'next_link' => '>',
    'prev_link' => '<',
    'last_link' => '>>',
    'uri_segment' => 3,
    'full_tag_open' => '<div class="page-control"><ul class="pagination pull-right">',
    'full_tag_close' => '</ul></div>',
    'first_tag_open' => '<li>',
    'first_tag_close' => '</li>',
    'last_tag_open' => '<li>',
    'last_tag_close' => '</li>',
    'first_url' => '', // Alternative URL for the First Page.
    'cur_tag_open' => '<li class="active"><a href="javascript:;">',
    'cur_tag_close' => '</a></li>',
    'next_tag_open' => '<li>',
    'next_tag_close' => '</li>',
    'prev_tag_open' => '<li>',
    'prev_tag_close' => '</li>',
    'num_tag_open' => '<li>',
    'num_tag_close' => '</li>',
    'display_pages' => TRUE,
    'anchor_class' => '',
    'num_links' => 3
);

具体逻辑参照

system/core/pagination.php#create_links

基本思路

  • 根据总记录数算出总页数
  • 根据当前页和总页数和配置的标签生成分页html代码

验证码管理 ←o→ 表单防CSRF(Cross-site request forgery)的实现

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,252评论 4 61
  • 文/赵小乐 岁月是默默的从生命中走过, 当我每一次回首, 每一次因困难的阻碍妄想退缩, 每一次被他人叫住匆忙前行的...
    赵小乐KIP阅读 273评论 0 5
  • 冬天的太阳透过办公室的玻璃窗照在身上,忽然发现,原来羽绒服这么暖和。手头没有工作的同事们聚在一起谈论着越来越...
    棋子QiQi阅读 405评论 2 0
  • 自定义不等高cell 自定义不等高cell(纯代码) 给模型增加frame数据 所有子控件的frame cell...
    今夜子辰阅读 572评论 0 2