我想知道服务应该负责什么。我们来看一个提供注册(电子邮件,密码)功能的UserService。
选项1 :服务仅在不检查电子邮件/密码参数的情况下调用api。检查在控制器中完成。
选项2 :服务检查参数,然后在数据看起来正常时调用api。控制器只调用该服务。
我总是选择选项1,但也许这不是有角度的方式。
答案 0 :(得分:0)
我个人会使用与ng-model
一起使用的内置验证。使用ng-pattern
,ng-requried
(等)属性。
这允许您在输入源处进行验证,并执行使用户体验更好的事情,例如突出显示无效字段,禁用提交按钮以及所有这些好东西。
验证服务本身的唯一好处是,您可以略微减少写入的代码量,我猜它可能会多一点" DRY"
我想有一个中间件,您在服务上定义一个函数,如果输入有效则返回true,然后您可以在表单中使用该函数来启用/禁用/突出显示内容。
简而言之,我认为" angular"这样做的方式是服务之外,但这里没有黑色或白色 - 无论哪种方式最适合您和您的具体实施。