刚刚正式接触layui,看了官网之后觉得这个前端框架还是简约而不简单呢。
layui的表格真的是很棒,作为一个新全栈的码农在使用done属性进行数据渲染时,始终无法成功!
痛苦啊!
项目背景:
十年前老古董项目,虽然使用的是SpringMVC,Spring,Mybatis三件套,但是结构十分混乱冗杂,里面反复建设新代码,导致体积十分庞大,当然也因为包含了前端的jsp页面在里面。
前端使用的是LayUI + jsp。
问题场景:
项目接手之后,需要在原来的屎山代码上进行迭代并扩展一些新功能,好在重点优化的是页面,新建页面就行。前者的遗迹已不可取了,所以我就开始研究layui的官方文档,准备另起炉灶。
正题:
数据接口请求异常:parsererror
数据接口请求异常:parsererror
数据接口请求异常:parsererror
原因:
接口返回数据格式不争取,严格按照官网格式进行数据组装。
我的问题见下图,反应过来之后,觉得自己脑子简直瓦特了
@RequestMapping(value = "list3",method = RequestMethod.POST)
public ModelAndView list3(HttpServletRequest request,// Map<String,Object>
HttpServletResponse response) throws Exception {
QueryFilter queryFilter = new QueryFilter(request, "xxxxx");
List<Rkxx> rkxxs = rkxxService.getAll(queryFilter);
Map<String,Object> result = new HashMap<>();
result.put("code", 0);
result.put("msg", "success");
result.put("data", rkxxs);
result.put("count", rkxxs.size());
return this.getAutoView().addObject("xxxxx", result);
}
我应该返回result,结果还是把result嫁接在原来的屎山代码上了。
ModelAndView 视图映射对象明明在加载页面的时候调用一次就可以了,我居然还拿来就用。
修改:
1.改造controller,将ModelAndView映射的jsp功能单独抽取成一个方法,前端菜单点击目录以后,通过抽取出来的方法,将目标jsp路径返回回去,用于前端转发。
2.抽走ModelAndView之后,就可以按layui的要求组装并返回结果了。
最后刷新页面,结果正常显示,over,搞定。