AngularJS中update两次出现$promise属性无法识别的解决方法


Posted in Javascript onJanuary 05, 2017

前言

本文主要介绍的是在AngularJS中update两次出现$promise属性无法识别的解决方法,下面话不多说,先来看看错误提示,然后再看看解决的办法吧。

一、错误信息如下:

ERROR 2015-12-02 14:33:17,653 http-bio-8080-exec-42 o.s.s.r.i.e.InternalErrorExceptionMapper - Unrecognized field "$promise" (class com.inetpsa.fnd.rest.client.ClientRepresentation), not marked as ignorable (6 known properties: "lastName", "address", "telephone", "clientId", "mail", "firstName"]) 
 at [Source: org.apache.catalina.connector.CoyoteInputStream@1b9d797d; line: 1, column: 357] (through reference chain: com.inetpsa.fnd.rest.client.ClientRepresentation["$promise"]) 
com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "$promise" (class com.inetpsa.fnd.rest.client.ClientRepresentation), not marked as ignorable (6 known properties: "lastName", "address", "telephone", "clientId", "mail", "firstName"]) 
 at [Source: org.apache.catalina.connector.CoyoteInputStream@1b9d797d; line: 1, column: 357] (through reference chain: com.inetpsa.fnd.rest.client.ClientRepresentation["$promise"]) 
 at com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException.from(UnrecognizedPropertyException.java:51) ~[jackson-databind-2.4.4.jar:2.4.4] 
 at com.fasterxml.jackson.databind.DeserializationContext.reportUnknownProperty(DeserializationContext.java:744) ~[jackson-databind-2.4.4.jar:2.4.4] 
 at com.fasterxml.jackson.databind.deser.std.StdDeserializer.handleUnknownProperty(StdDeserializer.java:915) ~[jackson-databind-2.4.4.jar:2.4.4] 
 at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.handleUnknownProperty(BeanDeserializerBase.java:1306) ~[jackson-databind-2.4.4.jar:2.4.4] 
 at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.handleUnknownVanilla(BeanDeserializerBase.java:1284) ~[jackson-databind-2.4.4.jar:2.4.4] 
 at com.fasterxml.jackson.databind.deser.BeanDeserializer.vanillaDeserialize(BeanDeserializer.java:243) ~[jackson-databind-2.4.4.jar:2.4.4] 
 at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:118) ~[jackson-databind-2.4.4.jar:2.4.4]

二、问题代码

AngularJS中update两次出现$promise属性无法识别的解决方法

Angular 自动会在返回的data数据中带上$promise属性。

AngularJS中update两次出现$promise属性无法识别的解决方法

在进行下面copy时将从data返回的数据copy到当前行用来显示,这样在进行update的操作时带的数据体中就包含了$promise属性,结果就会出现上述错误导致update失败。  

AngularJS中update两次出现$promise属性无法识别的解决方法

三、更改如下:

// ===============show the update modal dialog ================== 
 $scope.tempRowEntityForUpdate; 
 $scope.openUpdateClientPopup=function(){ 
 $scope.form1.$setSubmitted(true); 
 $scope.tempRowEntityForUpdate = {}; 
 angular.copy($scope.currentSelectedRowEntity, $scope.tempRowEntityForUpdate); 
 angular.element('#UpdateDialog').modal({ 
 backdrop: false 
 }); 
 
 }; 
 
 $scope.updateClient=function(){ 
 if($scope.form1.$submitted && $scope.form1.$valid){ 
 Client.update({},$scope.tempRowEntityForUpdate,function(){ 
  angular.copy($scope.tempRowEntityForUpdate,$scope.currentSelectedRowEntity); 
 }); 
 
 angular.element('#UpdateDialog').modal('hide'); 
 } 
 };

解决办法:不使用更新后获得的data数据,而是从当前的行模型中取得数据copy给当前选中的行即可。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

Javascript 相关文章推荐
总结一些js自定义的函数
Aug 05 Javascript
jQuery get和post 方法传值注意事项
Nov 03 Javascript
JavaScript获取表格(table)当前行的值、删除行、增加行
Jul 03 Javascript
深入理解jquery自定义动画animate()
May 24 Javascript
angularjs 表单密码验证自定义指令实现代码
Oct 27 Javascript
jQuery简单自定义图片轮播插件及用法示例
Nov 21 Javascript
JS定时器用法分析【时钟与菜单中的应用】
Dec 21 Javascript
微信小程序调用摄像头隐藏式拍照功能
Aug 22 Javascript
微信上传视频文件提示(推荐)
Nov 22 Javascript
vue中keep-alive,include的缓存问题
Nov 26 Javascript
原生js拖拽实现图形伸缩效果
Feb 10 Javascript
Vue时间轴 vue-light-timeline的用法说明
Oct 29 Javascript
jQuery展示表格点击变色、全选、删除
Jan 05 #Javascript
JSON字符串和JSON对象相互转化实例详解
Jan 05 #Javascript
JS实现随机颜色的3种方法与颜色格式的转化
Jan 05 #Javascript
jQuery选择器实例应用
Jan 05 #Javascript
使用smartupload组件实现jsp+jdbc上传下载文件实例解析
Jan 05 #Javascript
javascript解析ajax返回的xml和json格式数据实例详解
Jan 05 #Javascript
Node.js中文件操作模块File System的详细介绍
Jan 05 #Javascript
You might like
如何在PHP中进行身份认证
2006/10/09 PHP
PHP中通过加号合并数组的一个简单方法分享
2011/01/27 PHP
PHP setcookie设置Cookie用法(及设置无效的问题)
2011/07/13 PHP
PHP中HTML标签过滤技巧
2014/01/07 PHP
php常用文件操作函数汇总
2014/11/22 PHP
jQuery 操作XML入门
2008/12/25 Javascript
jQuery 类twitter的文本字数限制带提示效果插件
2010/04/16 Javascript
通过继承IHttpHandle实现JS插件的组织与管理
2010/07/13 Javascript
鼠标选择动态改变网页背景颜色的JS代码
2013/12/10 Javascript
删除节点的jquery代码
2014/01/13 Javascript
jQuery实现级联菜单效果(仿淘宝首页菜单动画)
2014/04/10 Javascript
node.js中的querystring.escape方法使用说明
2014/12/10 Javascript
jQuery中prevAll()方法用法实例
2015/01/08 Javascript
jquery+CSS实现的水平布局多级网页菜单效果
2015/08/24 Javascript
angular+ionic 的app上拉加载更新数据实现方法
2017/01/16 Javascript
jQuery使用siblings获取某元素所有同辈(兄弟姐妹)元素用法示例
2017/01/30 Javascript
BackBone及其实例探究_动力节点Java学院整理
2017/07/14 Javascript
JS算法题之查找数字在数组中的索引位置
2019/05/15 Javascript
[00:43]DOTA2小紫本全民票选福利PA至宝全方位展示
2014/11/25 DOTA
python实现向ppt文件里插入新幻灯片页面的方法
2015/04/28 Python
MySQL适配器PyMySQL详解
2017/09/20 Python
Python+树莓派+YOLO打造一款人工智能照相机
2018/01/02 Python
python多进程控制学习小结
2018/10/31 Python
django orm 通过related_name反向查询的方法
2018/12/15 Python
python plotly画柱状图代码实例
2019/12/13 Python
Python使用Chrome插件实现爬虫过程图解
2020/06/09 Python
css3给背景图片加颜色遮罩的方法
2019/11/05 HTML / CSS
请说出这段代码执行后a和b的值分别是多少
2015/03/28 面试题
土木工程专业自荐信
2013/10/04 职场文书
经贸日语专业个人求职信
2013/12/13 职场文书
大学生村官考核材料
2014/05/23 职场文书
本科毕业生自荐信
2014/05/26 职场文书
2014年国庆节活动总结
2014/08/26 职场文书
外贸业务员岗位职责
2015/02/13 职场文书
gojs实现蚂蚁线动画效果
2022/02/18 Javascript
公历12个月名称的由来
2022/04/12 杂记