为了账号安全,请及时绑定邮箱和手机立即绑定

前后端数据一致性的问题

前后端数据一致性的问题

MMMHUHU 2019-04-18 18:15:00
前端页面有easyui-tree,后端返回List< EasyUITreeNode>当后端EasyUITreeNode节点中,属性定义为public String state的时候,前端可以正常展开树。当public String status的时候,前端不能展开树。但是因为后端是自己敲的,前端是拷贝的,以为命名变量只要自己知道意义就好,不知道原来还有这个注意点。那么问题来了。怎样从前端页面分析出后端的变量到底应该叫什么呢??以下是前端代码<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <div>      <ul id="contentCategory" class="easyui-tree">  </ul> </div> <div id="contentCategoryMenu" class="easyui-menu" style="width:120px;" data-options="onClick:menuHandler">     <div data-options="iconCls:'icon-add',name:'add'">添加</div>     <div data-options="iconCls:'icon-remove',name:'rename'">重命名</div>     <div class="menu-sep"></div>     <div data-options="iconCls:'icon-remove',name:'delete'">删除</div> </div> <script type="text/javascript"> //文档加载后处理以下的逻辑 $(function(){     //在#contentCategory 所在的标签中创建一颗树     $("#contentCategory").tree({         url : '/content/category/list',         animate: true,         method : "GET",         //右击鼠标触发         onContextMenu: function(e,node){             //关闭原来的鼠标的默认事件             e.preventDefault();             //选中 右击鼠标的节点             $(this).tree('select',node.target);             //展示菜单栏             $('#contentCategoryMenu').menu('show',{                 left: e.pageX,//在鼠标的位置显示                 top: e.pageY//在鼠标的位置显示             });         },
查看完整描述

3 回答

?
ibeautiful

TA贡献1993条经验 获得超5个赞

这个并不是说拷贝别人的前端,而后端自己写的问题,如果用到的是easyui tree,则需要根据easyui tree的api属性来决定的,这个树的展现都逃不了官方easyui tree的属性。

id:节点的 id,它对于加载远程数据很重要。
text:要显示的节点文本。
state:节点状态,'open' 或 'closed',默认是 'open'。当设置为 'closed' 时,该节点有子节点,并且将从远程站点加载它们。
checked:指示节点是否被选中。
attributes:给一个节点添加的自定义属性。
children:定义了一些子节点的节点数组。

所以你说的定义变量state还是status,只有你后台调用接口返回了easyui tree需要的json串即可


查看完整回答
反对 回复 2019-05-16
?
胡子哥哥

TA贡献1825条经验 获得超6个赞

当初学习easyui的时候我也碰到跟你一样的问题,后来我去easyui的官方文档上找到了答案,像你说的字段定义,在文档上都有清晰的介绍,可以举一反三。


查看完整回答
反对 回复 2019-05-16
?
qq_花开花谢_0

TA贡献1835条经验 获得超7个赞

这不是分析的问题,前后一致性应该由后端保证,state和status当然不能随意变了。后端式服务提供者,改属性名一定要通知前端的


查看完整回答
反对 回复 2019-05-16
?
宝慕林4294392

TA贡献2021条经验 获得超8个赞

这个还是要分情况吧,一般需求讨论好了以后最先完成的是前端,然后根据前端需求再去写后台,一般也是前台接口决定后台数据格式输出


查看完整回答
反对 回复 2019-05-16
  • 3 回答
  • 0 关注
  • 795 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号