Uncaught TypeError: Cannot create property 'LAY_TABLE_INDEX' on number '2

一. 问题描述

后台:SSM框架
前端:layui框架

描述:一个商城,登录普通用户,进入后台管理,查看当前用户的一些信息和操作。(因为当前登录的是普通用户,所以只能看到自己的信息,不能看到别人的信息)

二. 报错原因

layui的table数据返回接口是data:[{},{},…],所以如果后台的controller方法只返回一个user对象作为data,是会报错table.js?v=1585550979763:2 Uncaught TypeError: Cannot create property ‘LAY_TABLE_INDEX’ on number '2的

三. 解决方案

  • 最最最最关键的就是new一个List把user装进去,再赋给data作为返回数据的接口,如下:
@ResponseBody
	@RequestMapping(value="/getPage2",method=RequestMethod.GET)
	public Map<String, Object> getPage2(HttpServletRequest request){
     
		Map<String, Object> map = new HashMap<String, Object>();
		HttpSession session = request.getSession();
		User user = (User) session.getAttribute("user");
		List<User> list = new ArrayList<User>();
		list.add(user);//关键
		map.put("code", 0);
		map.put("msg", "操作成功");
		map.put("count", list.size());
		map.put("data", list);
		return map;
	}

解释: List list = new ArrayList(); list.add(user);//关键这里很关键

你可能感兴趣的:(每日一写,Layui,java)