🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## **表格概述** * 表格页面在后台管理开发中,使用频率最高,主要用于数据的展示和管理。 * DaiCuo内置的表格组件采用的是Bootstrap Table插件,它既轻量级又功能丰富。 * DaiCuo框架根据Bootstrap Table插件的数据属性模式,已封装好助手函数 DcBuildTable 用于快速生成表格。 > 其原理是先通过模板引擎解析生成Bootstrap Table的数据属性Html代码,然后引入Bootstrap Table插件,表格插件初始化后将通过AJAX的方式与后端数据URL通信,最终以表格的形式将数据展现在页面上。 ## **Bootstrap Table** * Bootstrap Table旨在减少开发时间,并且不需要开发人员的特定知识。 * Bootstrap Table插件可通过数据属性或JavaScript以表格格式显示数据。 * 更多资料阅读可移步 [Bootstrap Table 官网](https://bootstrap-table.com/) ## **如何使用** * 在DaiCuo框架中只需要继承后台模板,就可以直接使用DcBuildTable助手函数快速生成一个表格数据。 * 如果继承后台模板,则需要先引入DaiCuoJs库(public/js/base.js),并通过JS的方法window.daicuo.table.init()动态加载Bootstrap Table插件。 #### 继承后台模板生成表格的实例 ``` {extend name="apps/common/view/admin.tpl" /} {block name="main"} {:DcBuildTable([ 'data-escape' => 'false', 'data-toggle' => 'bootstrap-table', 'data-url' => DcUrl('admin/store/index', '', ''), 'data-buttons-prefix' => 'btn', 'data-buttons-class' => 'purple', 'data-buttons-align' => 'none float-md-right', 'data-icon-size' => 'sm', 'data-toolbar' => '.toolbar', 'data-toolbar-align' => 'none float-md-left', 'data-search-align' => 'none float-md-right', 'data-search' => 'false', 'data-show-search-button' => 'true', 'data-show-refresh' => 'true', 'data-show-toggle' => 'true', 'data-show-fullscreen' => 'true', 'data-smart-display' => 'true', 'data-unique-id' => 'id', 'data-id-field' => 'id', 'data-select-item-name' => 'id[]', 'data-query-params-type' => 'params', 'data-query-params' => 'queryParams', 'data-sort-name' => 'id', 'data-sort-order' => 'desc', 'data-sort-class' => 'table-active', 'data-sort-stable' => 'false', //'data-side-pagination' => 'server', //'data-total-field' => 'total', //'data-data-field' => 'data', 'data-page-number' => $page, 'data-page-size' => '30', 'data-page-list' => [], 'data-pagination' => 'true', //'data-pagination-h-align' => 'left', //'data-pagination-detail-h-align' => 'right', //'data-pagination-v-align' => 'top', //'data-show-extended-pagination' => 'true', 'columns'=>[ [ 'data-field'=>'id', 'data-title'=>'id', 'data-width'=>'3', 'data-width-unit'=>'%', 'data-sortable'=>'true', 'data-sort-name'=>'id', 'data-sort-order'=>'asc', 'data-class'=>'', 'data-align'=>'center', 'data-valign'=>'middle', 'data-halign'=>'center', 'data-falign'=>'center', 'data-visible'=>'true', //'data-formatter'=>'', //'data-footer-formatter'=>'', ], [ 'data-field'=>'name', 'data-title'=>lang('name'), //'data-width'=>'15', //'data-width-unit'=>'%', 'data-align'=>'left', 'data-halign'=>'center', ] ] ])} {/block} ``` #### 自定义模板生成表格数据的实例 ``` {:DcBuildTable('参数同上')} <script src="/public/js/base.js"></script> <script>window.daicuo.table.init();</script> ```