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 相关文章推荐
Javascript开发包大全整理
Dec 22 Javascript
QQ邮箱的一个文本编辑器代码
Mar 14 Javascript
setAttribute 与 class冲突解决
Feb 17 Javascript
JavaScript 异步调用框架 (Part 6 - 实例 &amp; 模式)
Aug 04 Javascript
javascript 面向对象编程 聊聊对象的事
Sep 17 Javascript
AngularJS学习笔记之TodoMVC的分析
Feb 22 Javascript
比较常见的javascript中定义函数的区别
Nov 09 Javascript
jQuery 获取多选框的值及多选框中文的函数
May 16 Javascript
vue实现简单的星级评分组件源码
Nov 16 Javascript
微信小程序实现获取小程序码和二维码java接口开发
Mar 29 Javascript
vue视频播放暂停代码
Nov 08 Javascript
vue项目中使用eslint+prettier规范与检查代码的方法
Jan 16 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
全国FM电台频率大全 - 1 北京市
2020/03/11 无线电
PHP面向对象——访问修饰符介绍
2012/11/08 PHP
如何给phpcms v9增加类似于phpcms 2008中的关键词表
2013/07/01 PHP
php 判断服务器操作系统的类型
2014/02/17 PHP
php面向对象值单例模式
2016/05/03 PHP
基于Unit PNG Fix.js有时候在ie6下不正常的解决办法
2013/06/26 Javascript
javascript禁用键盘功能键让右击及其他键无效
2013/10/09 Javascript
js文件包含的几种方式介绍
2014/09/28 Javascript
使用AngularJS实现表单向导的方法
2015/06/19 Javascript
js实现当前输入框高亮显示的方法
2015/08/19 Javascript
js点击按钮实现带遮罩层的弹出视频效果
2015/12/19 Javascript
jquery在ie7下选择器的问题导致append失效的解决方法
2016/01/10 Javascript
全面了解JavaScript的数据类型转换
2016/07/01 Javascript
简单的JS轮播图代码
2016/07/18 Javascript
JavaScript程序设计高级算法之动态规划实例分析
2017/11/24 Javascript
VUE + UEditor 单图片跨域上传功能的实现方法
2018/02/08 Javascript
Angular利用内容投射向组件输入ngForOf模板的方法
2018/03/05 Javascript
javascript实现文件拖拽事件
2018/03/29 Javascript
react native 文字轮播的实现示例
2018/07/27 Javascript
vue实现图片按比例缩放问题操作
2020/08/11 Javascript
Python标准库之多进程(multiprocessing包)介绍
2014/11/25 Python
Python实现Linux中的du命令
2017/06/12 Python
Python面向对象程序设计类的封装与继承用法示例
2019/04/12 Python
python定时复制远程文件夹中所有文件
2019/04/30 Python
Python数据存储之 h5py详解
2019/12/26 Python
pyautogui自动化控制鼠标和键盘操作的步骤
2020/04/01 Python
Python调用.net动态库实现过程解析
2020/06/05 Python
numpy中生成随机数的几种常用函数(小结)
2020/08/18 Python
CSS3动画效果回调处理详解
2014/12/10 HTML / CSS
前端实现弹幕效果的方法总结(包含css3和canvas的实现方式)
2018/07/12 HTML / CSS
美国农场商店:Blain’s Farm & Fleet
2020/01/17 全球购物
大学学习个人的自我评价
2014/02/18 职场文书
护士医德考评自我评价
2015/03/03 职场文书
小学六年级班主任工作经验交流材料
2015/11/02 职场文书
配置nginx负载均衡
2022/05/06 Servers
教你nginx跳转配置的四种方式
2022/07/07 Servers