Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vue.js/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vue.js是否应将数据从弹出窗口发射回主窗口?_Vue.js_Vuejs2_Axios - Fatal编程技术网

Vue.js是否应将数据从弹出窗口发射回主窗口?

Vue.js是否应将数据从弹出窗口发射回主窗口?,vue.js,vuejs2,axios,Vue.js,Vuejs2,Axios,对于Vue和弹出窗口,我和我的同事似乎无法就最佳实践达成一致。 问题如下: 您在主窗口上,使用RESTAPI从后端获取数据,并注意到一个错误。若要修复它,请转到“编辑”弹出窗口,点击“保存”后,会发生什么 您应该从弹出窗口调用API吗 发出更改的数据并让主窗口调用API 这是一个非常有趣的问题,但我认为真相取决于您的整个体系结构、实现和使用的方法 比如说,如果您担心“关注点分离”,您不会给弹出窗口任何API访问权限,因为它的工作是将一些数据显示为弹出窗口,返回数据,就这样 另一方面,您如何处

对于Vue和弹出窗口,我和我的同事似乎无法就最佳实践达成一致。 问题如下:

您在主窗口上,使用RESTAPI从后端获取数据,并注意到一个错误。若要修复它,请转到“编辑”弹出窗口,点击“保存”后,会发生什么

  • 您应该从弹出窗口调用API吗
  • 发出更改的数据并让主窗口调用API

    • 这是一个非常有趣的问题,但我认为真相取决于您的整个体系结构、实现和使用的方法

      比如说,如果您担心“关注点分离”,您不会给弹出窗口任何API访问权限,因为它的工作是将一些数据显示为弹出窗口,返回数据,就这样

      另一方面,您如何处理错误?如果用户在弹出窗口中工作时出现错误怎么办?您在哪里显示错误

      另一个问题是可用性。例如,如果在保存数据时发生错误,如果是由主窗口完成的,则将执行以下操作:

    • 显示错误消息

    • 让用户再次单击某个按钮以显示弹出窗口

    • 修复问题并单击其中的“保存”按钮

    • 但若你们想从弹出窗口直接访问API,你们可以避免前两步。另一个问题是如何处理错误的数据


      如果您仍在弹出窗口中,您可以轻松验证数据并取消保存(或完全禁用此按钮),但如果在关闭弹出窗口后完成,则可能为时已晚。

      这是一个非常有趣的问题,但我认为真相取决于您的整个体系结构、实现和使用的方法

      比如说,如果您担心“关注点分离”,您不会给弹出窗口任何API访问权限,因为它的工作是将一些数据显示为弹出窗口,返回数据,就这样

      另一方面,您如何处理错误?如果用户在弹出窗口中工作时出现错误怎么办?您在哪里显示错误

      另一个问题是可用性。例如,如果在保存数据时发生错误,如果是由主窗口完成的,则将执行以下操作:

    • 显示错误消息

    • 让用户再次单击某个按钮以显示弹出窗口

    • 修复问题并单击其中的“保存”按钮

    • 但若你们想从弹出窗口直接访问API,你们可以避免前两步。另一个问题是如何处理错误的数据


      如果您仍在弹出窗口中,您可以轻松验证数据并取消保存(或完全禁用此按钮),但如果在弹出窗口关闭后完成,则可能为时已晚。

      我将使用vuex通过
      操作管理服务器交互。模态只需要启动请求。很好的一点是,它将业务逻辑保持在一个位置(如果您对所有REST API需求都这样做的话)。我将使用vuex通过
      操作管理服务器交互。模态只需要启动请求。很好的一点是,它将业务逻辑保持在一个地方(如果您对所有RESTAPI需求都这样做的话)!!我明白你的意思。最好问问自己如何处理错误的输入/服务器错误,然后继续。我选择了“如果成功,主窗口将关闭弹出窗口”的路线@Hafinator Right,也许也值得向您的用户提问:)无论如何,我的想法是从不同的角度来审视工作流:实现、错误处理、可用性等。啊哈!!我明白你的意思。最好问问自己如何处理错误的输入/服务器错误,然后继续。我选择了“如果成功,主窗口将关闭弹出窗口”的路线@Hafinator Right,也许也值得向您的用户提问:)无论如何,我的想法是从不同的角度来审视工作流:实现、错误处理、可用性等。