AngularJS辅助库browserTrigger用法示例


Posted in Javascript onNovember 03, 2016

本文实例讲述了AngularJS辅助库browserTrigger用法。分享给大家供大家参考,具体如下:

今天推荐一款来自angularjs源码的单元测试辅助库browserTrigger,这是来自于ngScenario的一段代码。主要用户触发浏览器型行为更新ng中scope view model的值。

这是angularjs源码中单元测试的使用browserTrigger的实例:

it('should set the model to empty string when empty option is selected', function() {
  scope.robot = 'x';
  compile('<select ng-model="robot">' +
       '<option value="">--select--</option>' +
       '<option value="x">robot x</option>' +
       '<option value="y">robot y</option>' +
      '</select>');
  expect(element).toEqualSelect('', ['x'], 'y');
  browserTrigger(element.find('option').eq(0));
  expect(element).toEqualSelect([''], 'x', 'y');
  expect(scope.robot).toBe('');
});

在这段代码中给browserTrigger传入你希望选择的select option,则它会帮助你tigger change,选中当前option,更触发更新ng select的viewmodel。

在browserTrigger中还为我们做了很多其他输入框或者html控件的触发接口,同时也加入了浏览器的兼容性。使得我们的测试更加方便不用考虑浏览器兼容性或者不同的html控件trigger不同的事件去更新scope的值。

具体更多信息可参考ng的官方测试和browserTrigger源码。

希望本文所述对大家AngularJS程序设计有所帮助。

Javascript 相关文章推荐
指定js可访问其它域名的cookie的方法
Sep 18 Javascript
JavaScript 事件参考手册
Dec 24 Javascript
IE之动态添加DOM节点触发window.resize事件
Jul 27 Javascript
JavaScript中的原型链prototype介绍
Dec 30 Javascript
jQuery对象与DOM对象之间的相互转换
Mar 03 Javascript
js判断子窗体是否关闭的方法
Aug 11 Javascript
jQuery封装的屏幕居中提示信息代码
Jun 08 Javascript
bootstrap laydate日期组件使用详解
Jan 04 Javascript
细说webpack源码之compile流程-rules参数处理技巧(2)
Dec 26 Javascript
Vue filter格式化时间戳时间成标准日期格式的方法
Sep 16 Javascript
vue模仿网易云音乐的单页面应用
Apr 24 Javascript
vue.js+elementUI实现点击左右箭头切换头像功能(类似轮播图效果)
Sep 05 Javascript
AngularJS使用ng-Cloak阻止初始化闪烁问题的方法
Nov 03 #Javascript
Vue.js实现无限加载与分页功能开发
Nov 03 #Javascript
vue自定义指令实现v-tap插件
Nov 03 #Javascript
angular ngClick阻止冒泡使用默认行为的方法
Nov 03 #Javascript
vue.js指令v-for使用及索引获取
Nov 03 #Javascript
vue.js初学入门教程(1)
Nov 03 #Javascript
把json格式的字符串转换成javascript对象或数组的方法总结
Nov 03 #Javascript
You might like
基于PHP对XML的操作详解
2013/06/07 PHP
Zend studio文件注释模板设置方法
2013/09/29 PHP
PHP获取当前所在目录位置的方法
2014/11/26 PHP
在Laravel框架里实现发送邮件实例(邮箱验证)
2016/05/20 PHP
Smarty实现页面静态化(生成HTML)的方法
2016/05/23 PHP
PHP字符串中抽取子串操作实例分析
2019/06/22 PHP
Prototype使用指南之selector.js
2007/01/10 Javascript
javascript css styleFloat和cssFloat
2010/03/15 Javascript
JS禁用浏览器退格键实现思路及代码
2013/10/29 Javascript
Jquery实现侧边栏跟随滚动条固定(兼容IE6)
2014/04/02 Javascript
js获取字符串最后一位方法汇总
2014/11/13 Javascript
jquery 操作css样式、位置、尺寸方法汇总
2014/11/28 Javascript
JS实现自动定时切换的简洁网页选项卡效果
2015/10/13 Javascript
每天一篇javascript学习小结(Function对象)
2015/11/16 Javascript
JavaScript实现图片自动加载的瀑布流效果
2016/04/11 Javascript
js对象浅拷贝和深拷贝详解
2016/09/05 Javascript
基于Vuejs框架实现翻页组件
2020/06/29 Javascript
AngularJS模仿Form表单提交的实现代码
2016/12/08 Javascript
vue.js实现的全选与全不选功能示例【基于elementui】
2018/12/03 Javascript
如何从零开始手写Koa2框架
2019/03/22 Javascript
extjs图形绘制之饼图实现方法分析
2020/03/06 Javascript
Python调用C语言开发的共享库方法实例
2015/03/18 Python
python方向键控制上下左右代码
2018/01/20 Python
pandas.dataframe按行索引表达式选取方法
2018/10/30 Python
python语言元素知识点详解
2019/05/15 Python
python调用摄像头拍摄数据集
2019/06/01 Python
使用Numpy对特征中的异常值进行替换及条件替换方式
2020/06/08 Python
质检部部长职责
2013/12/16 职场文书
护士毕业自我鉴定
2014/02/07 职场文书
个人房屋转让协议书范本
2014/10/26 职场文书
小学生交通安全寄语
2015/02/27 职场文书
上学路上观后感
2015/06/16 职场文书
django注册用邮箱发送验证码的实现
2021/04/18 Python
死磕 java同步系列之synchronized解析
2021/06/28 Java/Android
Redis 哨兵机制及配置实现
2022/03/25 Redis
【海涛解说】pis亲自推荐,其实你从来不会玩NW
2022/04/01 DOTA