Javascript模型错误处理的优缺点

时间:2014-05-02 18:19:55

标签: javascript validation error-handling logic

在有人认为这是 Javascript错误处理最佳做法的重复之前,我建议您继续阅读。如果想知道,我正在与Google Closure合作。它提供了一个非常有用的 MVC 架构。

问题是我有机会将J strong中的业务逻辑与其他所有内容分开。这意味着对业务逻辑的调用只需要处理数据和验证。在一个复杂的网站上,主要是使用单页面应用程序,这种逻辑可以像你想象的那样变得肥胖。

显然,需要以用户友好的方式处理业务逻辑错误并向用户显示。这可以通过控制器和视图来完成。我的问题在于业务模型和控制器之间的联系。我应该如何在验证中返回某些输入的错误,例如?

想象一下:您有一个输入表格,其中包含预订的客人数量,并且您打算验证总和是否小于给定的限制。

  1. 查看:用户输入数据
  2. 控制器:通过事件,检测到数据更改
  3. 控制器:收集数据并调用reservation.setGuests(adults, children)
  4. 之类的内容
  5. 型号:验证(给定内部信息),如果客人总数有效(例如小于3)
  6. 型号:返回SUCCESS或FAILURE,并显示用户错误消息
  7. 控制器:使用模型
  8. 的响应更新视图

    请注意必须返回结果的点数 5 。我能想到回归这种结果的唯一两种方法是:

    1. 如果验证出现问题,请抛出异常。没有回报。
    2. 始终返回结果对象,该对象知道操作的结果,并提供其他信息,如错误消息或控制器所需的数据。
    3. 这两种解决方案(我能想到)具有以下优点/缺点:

      例外:

      • Pro:模型中的清洁代码
      • Con:try-catch非常慢

      结果:

      • Pro:最快的选择
      • Con:每个结果都涉及一个对象
      • Con:在继续下一个业务指令(丑陋丑陋)之前验证每个结果

      现在,模型中错误处理的最佳方法是什么?异常或结果对象?还有更好的选择吗?

0 个答案:

没有答案