layui和後端如何連起來

發布: 2019-07-30 14:20:44
原創
14561 人瀏覽過

layui和後端如何連起來

Layui前後台資料互動:

layui有自己的一套特定的資料格式互動(這很重要),必須參數code :0,msg:“”,count:資料size(int),data:”資料List”。一般我們選擇封裝返回接收類別。
Layui前台js請求資料 
其中html程式碼

<link rel="stylesheet" href="static/layui/css/layui.css" media="all" />
<script type="text/javascript" src="static/layui/layui.js"></script>
<table class="layui-hide" id="test" lay-filter="table"></table>
登入後複製

js程式碼

layui.use([&#39;form&#39;,&#39;layer&#39;,&#39;table&#39;], function(){
          var table = layui.table
          ,form = layui.form,$=layui.$;

          table.render({
            elem: &#39;#test&#39;  //绑定table id
            ,url:&#39;sys/menu/list&#39;  //数据请求路径
            ,cellMinWidth: 80
            ,cols: [[
              {type:&#39;numbers&#39;}
              ,{field:&#39;name&#39;, title:&#39;菜单名称&#39;}
              ,{field:&#39;parentName&#39;, title:&#39;父菜单名称&#39;,width:150}
              ,{field:&#39;url&#39;, title: &#39;菜单路径&#39;}
              ,{field:&#39;perms&#39;, title: &#39;菜单权限&#39;}
              ,{field:&#39;type&#39;, title:&#39;类型&#39;}
              ,{field:&#39;icon&#39;, title:&#39;图标&#39;}
              ,{field:&#39;orderNum&#39;, title:&#39;排序&#39;}
              ,{fixed: &#39;right&#39;,title: &#39;操作&#39;, width:180,      align:&#39;center&#39;, toolbar: &#39;#toolBar&#39;}//一个工具栏  具体请查看layui官网
            ]]
            ,page: true   //开启分页
            ,limit:10   //默认十条数据一页
            ,limits:[10,20,30,50]  //数据分页条
            ,id: &#39;testReload&#39;  
          });
});
登入後複製

java後台程式碼

 @RequestMapping("/list")
        @ResponseBody
        @RequiresPermissions("sys:menu:list")
        public Layui list(@RequestParam Map<String, Object> params){
            //查询列表数据
            Query query = new Query(params);
            List<SysMenuEntity> menuList = sysMenuService.queryList(query);
            int total = sysMenuService.queryTotal(query);
            PageUtils pageUtil = new PageUtils(menuList, total, query.getLimit(), query.getPage());
            return Layui.data(pageUtil.getTotalCount(), pageUtil.getList());
        }
登入後複製

Layui工具類別程式碼

public class Layui  extends HashMap<String, Object> {

    public static Layui data(Integer count,List<?> data){
        Layui r = new Layui();
        r.put("code", 0);
        r.put("msg", "");
        r.put("count", count);
        r.put("data", data);
        return r;
    }
}
登入後複製

PageUtils在這裡可有可無,你們可以自行封裝

@Data
public class PageUtils implements Serializable {
    private static final long serialVersionUID = -1202716581589799959L;
    //总记录数
    private int totalCount;
    //每页记录数
    private int pageSize;
    //总页数
    private int totalPage;
    //当前页数
    private int currPage;
    //列表数据
    private List<?> list;
    /**
     * 分页
     * @param list        列表数据
     * @param totalCount  总记录数
     * @param pageSize    每页记录数
     * @param currPage    当前页数
     */
    public PageUtils(List<?> list, int totalCount, int pageSize, int currPage) {
        this.list = list;
        this.totalCount = totalCount;
        this.pageSize = pageSize;
        this.currPage = currPage;
        this.totalPage = (int)Math.ceil((double)totalCount/pageSize);
    }
}
登入後複製

推薦:layui框架教學

#

以上是layui和後端如何連起來的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!