单元测试 – 如何在angularjs单元测试中触发keyup/keydown事件?

前端之家收集整理的这篇文章主要介绍了单元测试 – 如何在angularjs单元测试中触发keyup/keydown事件?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想单元测试一个模拟占位符的指令,其中输入值仅在keyup / down事件时清除。
您需要以编程方式创建事件并触发它。这样做包括jQuery的单元测试是非常有用的。例如,你可以这样写一个简单的实用程序:
var triggerKeyDown = function (element,keyCode) {
    var e = $.Event("keydown");
    e.which = keyCode;
    element.trigger(e);
  };

然后在你的单元测试中使用它:

triggerKeyDown(element,13);

你可以在这里的http://angular-ui.github.io/bootstrap/项目中看到这个技术的行动:https://github.com/angular-ui/bootstrap/blob/master/src/typeahead/test/typeahead.spec.js

免责声明:让我们在这里精确:我不提倡使用jQuery与AngularJS!我只是说,它是一个有用的DOM操作实用程序,用于编写测试与DOM交互。

要使上面的代码工作没有jQuery,更改:

$.Event('keydown')

至:

angular.element.Event('keydown')
原文链接:https://www.f2er.com/angularjs/145653.html

猜你在找的Angularjs相关文章