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高级程序设计 阅读笔记(七) ECMAScript中的语句
Feb 27 Javascript
JQuery插件开发示例代码
Nov 06 Javascript
JS实现屏蔽shift,Ctrl,alt等功能键的方法
Jun 01 Javascript
Validform+layer实现漂亮的表单验证特效
Jan 17 Javascript
手机端实现Bootstrap简单图片轮播效果
Oct 13 Javascript
Jquery实现上下移动和排序代码
Oct 17 Javascript
如何从零开始利用js手写一个Promise库详解
Apr 19 Javascript
详解Angular-ui-BootStrap组件的解释以及使用
Jul 13 Javascript
vue实现自定义日期组件功能的实例代码
Nov 06 Javascript
详解Vue中组件传值的多重实现方式
Aug 16 Javascript
js模拟F11页面全屏显示
Sep 17 Javascript
原生微信小程序开发中 redux 的使用详解
Feb 18 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通用检测函数集合
2011/02/08 PHP
使用php转义输出HTML到JavaScript
2015/03/27 PHP
php实现的日历程序
2015/06/18 PHP
PHP session 会话处理函数
2016/06/06 PHP
yii框架无限极分类的实现方法
2017/04/08 PHP
laravel 解决强制跳转 https的问题
2019/10/22 PHP
javascript 全角转换实现代码
2009/07/17 Javascript
JavaScript下通过的XMLHttpRequest发送请求的代码
2011/06/28 Javascript
JSONP跨域的原理解析及其实现介绍
2014/03/22 Javascript
jQuery中:submit选择器用法实例
2015/01/03 Javascript
JavaScript获取页面中第一个锚定文本的方法
2015/04/03 Javascript
JavaScript希尔排序、快速排序、归并排序算法
2016/05/08 Javascript
简单实现js页面切换功能
2021/01/10 Javascript
多功能jQuery树插件zTree实现权限列表简单实例
2016/07/12 Javascript
JQuery遍历元素的父辈和祖先的方法
2016/09/18 Javascript
基于jQuery实现表格的排序
2016/12/02 Javascript
Angular路由简单学习
2016/12/26 Javascript
vue-awesome-swiper滑块插件使用方法详解
2017/11/27 Javascript
浅谈vue中改elementUI默认样式引发的static与assets的区别
2018/02/03 Javascript
JavaScript变量声明var,let.const及区别浅析
2018/04/23 Javascript
浅谈Vue.js之初始化el以及数据的绑定说明
2019/11/14 Javascript
JavaScript文档加载模式以及元素获取
2020/07/28 Javascript
python实现从web抓取文档的方法
2014/09/26 Python
Python的Django框架中从url中捕捉文本的方法
2015/07/20 Python
python结合API实现即时天气信息
2016/01/19 Python
python使用pymysql实现操作mysql
2016/09/13 Python
Python requests模块实例用法
2019/02/11 Python
Python3爬虫带上cookie的实例代码
2020/07/28 Python
国际商务专业学生个人的自我评价
2013/09/28 职场文书
运动会加油口号
2014/06/07 职场文书
电焊工岗位工作职责
2014/07/09 职场文书
2015年植树节活动总结
2015/02/06 职场文书
2015年资料员工作总结
2015/04/25 职场文书
5道关于python基础 while循环练习题
2021/11/27 Python
详解OpenCV曝光融合
2022/04/29 Python
详解Golang如何实现支持随机删除元素的堆
2022/09/23 Python