AngularJS独特的slug验证器指令

时间:2014-05-31 13:38:09

标签: angularjs angularjs-directive firebase

目前,我正在探索AngularJS的世界并遇到了一个问题。

我正在构建一个由Firebase支持的非常原始的博客应用程序,我想使用Angular验证来检查slug是否已经在使用中。但是,这里出了点问题。这是我写的一个指令,用于检查slug是否已被使用(没有Firebase ):

http://jsfiddle.net/Lk6fY/1/

正如你所看到的,这就像一个魅力。现在,我可以在这里插入Firebase调用,而不是原始检查,但这会形成两个问题:

  1. 在每个keyup上,请求都会发送到Firebase。如果这是一个用户的应用程序,这不会是一个问题,但想象5000人同时尝试发布博客条目(当然不会发生,但我想学习正确的方法)。
  2. 尽管如此,我确实尝试过,并没有按预期工作。我认为这与Firebase服务器的响应时间有关,因为:
  3. foo-bar有效,直到用户按下提交按钮,而foo-ba无效,但按下提交按钮后,用户可以继续操作。

    因此,我的问题是:如何以有效的方式解决这个问题? 理想情况下,我希望该指令在标题或slug字段不再成为焦点后连接到Firebase。这怎么可能?

0 个答案:

没有答案