easyUI 트리 메뉴 json 처리

1211 단어 프런트엔드
오늘 easyUI를 사용하여 트리 메뉴를 완성하려고 합니다. 백엔드 부분은 이미 작성되었고, json에 전단에 메뉴를 보여 줍니다.
이스유이가 트리 메뉴를 처리하는 json은 반드시 자신의 형식에 따라야 한다는 것을 발견했지만, 내 백엔드 부분은 이미 다 썼고, 수정하기도 불편하다.
easyui의tree 구성 요소가loadFilter 방법을 제공하는 것을 발견했습니다. 이 방법은 백엔드에서 전송된 데이터를 필터할 수 있습니다. 그래서 저는 백엔드에서 json을 처리하려고 합니다.
이것들은 나의 코드이다. 몇 군데의 코드만 수정하면 백엔드 json이 easyui가 규정한 json 형식으로 바뀔 수 있다.
//   easyui json  
var tree = {
	id:'',
	text:'',
	state:'',
	checked:'',
	attributes:'',
	children:''
}
//          json    easyui     
function bl(item){
	var tree = new Object();
	tree.id = item.id;
	tree.text = item.name;
	tree.state = 'open';
	tree.checked = 'false';
	tree.attributes = item.url;
	if(item.child_menus.length != 0){
		tree.children = jsonbl(item.child_menus);
	}else{
		tree.children = [];
	}
	return tree;
}
function jsonbl(data){
	var easyTree = [];
	$.each(data,function(index,item){
	 easyTree[index] = bl(item);
	 });
	return easyTree;
}
//   easyui  tree     (  easyui       ,      json api  )
$('#tt').tree({
 	url: '${pageContext.request.contextPath}/sysmenu/all',
	 loadFilter: function(data){ 
		return jsonbl(data); 
	}
});

좋은 웹페이지 즐겨찾기