2017-03-07 69 views
2

我有一个React应用程序用于处理前端,Rails用于后端。所以我有一个表单管理器,可以在其中添加一个字段,以前添加的字段可以被编辑或删除。一旦完成所有更改,用户可以单击保存按钮将数据发送到后端。使用React JS和Rails处理添加字段,编辑字段和删除字段

发送数据时,哪种方法会更有效率?

  • 组件跟踪新添加的字段,删除的字段和修改后的单独数组,并将它们全部发送到服务器并让服务器处理它?
  • 发送已修改和新添加的字段(不是已删除的字段)。现有字段的ids与它们相关联,这告诉后端应用程序它是已经存在的项目。此方法要求服务器对先前存在的字段使用当前提交的字段执行diffs方法以删除已删除的项目

或者是否有更好的选择?

回答

1

这里就是我想:

所以,我推你第一种方法,因为重新发送整个事情只是看起来不正确,并会放在服务器上的巨大的负荷。

但是,正如你所说,有一个单独的对象数组包含新的/删除/修改的数组的其他对象,并发送到服务器的POST调用,并让它处理它。

但请确保它不是单独的组件,而是一个redux模块,可以在整个过程中处理数据!

一旦进行了所有更改,用户可以单击保存按钮将数据发送到后端。

^本声明是上述方法的原因。分别

否则,我只想把每个表单域作为一个单独的数据录入和使用POST /删除调用API来保存/删除/编辑/PUT,这是方便多了。 KISS原则! (谷歌!)

PS:如果你打算使用第一种方法,请确保将用户在本地大型窗体中输入的数据保存在某处,以便即使他偶然切换页面,他也可以检索所有丢失的数据放心。