在数组模型AngularJS中使用不同的对象

时间:2015-05-22 07:32:37

标签: javascript angularjs

我对棱角分明是非常新的,这一点在我的头脑中引人注目。所以场景是:假设angular http返回包含对象数组的模型,如:

[{name:"Ankur",lastName:"aggarwal",updation_date:"23-08-2014"},{name:"xyz",lastName:"abc",updation_date:"29-08-2013"}]

这个updation_date不是必需的,但出于某种原因。因此,使用第三个对象更新数组是正确的,而没有创建日期,如{name:"def",lastName:"jbc"}。这是一个好的做法还是数组对象模型应该是一致的?

该方法应该是什么?首先更新模型数组,以便立即进行绑定,然后将其发送到服务器或将其发送到服务器并获取更新的对象?可能是基本的,但对于角和JMVC来说是非常新的。

2 个答案:

答案 0 :(得分:1)

这取决于您的错误处理。

由于服务器端的保存可能不成功,您应该考虑它。

我的方法是

  1. 立即更新角度对象
  2. 然后将AJAX请求发送到服务器和
  3. 等待回应。如果在服务器保存期间发生错误,您应该:
    • 还原值,
    • 重复AJAX
    • 向用户显示信息。

答案 1 :(得分:1)

  

这是一个好的做法还是数组对象模型应该是一致的?

这取决于,如果后端期望所有数组条目都包含updation_date,那么您没有选择,并且被迫添加一些合理的默认值。但是,如果可能则避免从后端发送太多不必要的数据,因为它会影响应用程序性能(如数据传输,添加不必要的逻辑以生成合理的默认值等)。

  

首先更新模型数组,然后立即进行绑定   将它发送到服务器或发送到服务器并获取更新的对象?

如果您的应用程序的性质允许在保存失败时恢复模型值,那么请继续

0.执行数据验证,并确保将有效数据提供给后端。

1.更新模型。

2.将数据发送到后端

3.如果发生了不好的事情,请根据应用需求执行错误处理

然而,如果在GUI中呈现一致的价值极为重要(例如财务应用程序),那么

0.执行数据验证,并确保将有效数据提供给后端。

1.向用户显示一些消息,如“保存”

2.执行ajax请求

3.如果成功,请更新模型,否则根据应用需求执行错误处理