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 HashTable
Jan 22 Javascript
JQuery对class属性的操作实现按钮开关效果
Oct 11 Javascript
利用js动态添加删除table行的示例代码
Dec 16 Javascript
JavaScript 正则表达式中global模式的特性
Feb 25 Javascript
浅谈JavaScript中的分支结构
Jul 01 Javascript
js实现点击切换checkbox背景图片的简单实例
May 08 Javascript
VueRouter导航守卫用法详解
Dec 25 Javascript
解决vue动态为数据添加新属性遇到的问题
Sep 18 Javascript
vue form check 表单验证的实现代码
Dec 09 Javascript
微信小程序自定义波浪组件使用方法详解
Sep 21 Javascript
vue父子组件的通信方法(实例详解)
Nov 10 Javascript
js滚轮事件 js自定义滚动条的实现
Jan 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中配置文件操作 如config.php文件的读取修改等操作
2012/07/07 PHP
PHP空值检测函数与方法汇总
2017/11/19 PHP
JS 对象介绍
2010/01/20 Javascript
js+css实现增加表单可用性之提示文字
2013/06/03 Javascript
关于js遍历表格的实例
2013/07/10 Javascript
JavaScript获取多个数组的交集简单实例
2013/11/11 Javascript
js+csss实现的一个带复选框的下拉框
2014/09/29 Javascript
js实现下拉框选择要显示图片的方法
2015/02/16 Javascript
JS基于面向对象实现的放烟花效果
2015/05/07 Javascript
javascript中不易分清的slice,splice和split三个函数
2016/03/29 Javascript
JavaScript的Backbone.js框架环境搭建及Hellow world示例
2016/05/07 Javascript
NodeJS连接MongoDB数据库时报错的快速解决方法
2016/05/13 NodeJs
bootstrap-datetimepicker实现只显示到日期的方法
2016/11/25 Javascript
JS实现利用两个队列表示一个栈的方法
2017/12/13 Javascript
基于vue-cli3和element实现登陆页面
2019/11/13 Javascript
用JS实现一个简单的打砖块游戏
2019/12/11 Javascript
python计算最小优先级队列代码分享
2013/12/18 Python
python实现的一个火车票转让信息采集器
2014/07/09 Python
Python中的数学运算操作符使用进阶
2016/06/20 Python
Django 日志配置按日期滚动的方法
2019/01/31 Python
如何在scrapy中捕获并处理各种异常
2020/09/28 Python
多视角3D逼真HTML5水波动画
2016/03/03 HTML / CSS
ProBikeKit新西兰:自行车套件,跑步和铁人三项装备
2017/04/05 全球购物
澳大利亚最大的女装零售商:Millers
2017/09/10 全球购物
英国最大的香水商店:The Fragrance Shop
2018/07/06 全球购物
总经理职责范文
2013/11/08 职场文书
校园活动策划书范文
2014/01/10 职场文书
2014年寒假社会实践活动心得体会
2014/04/07 职场文书
2014年教师节座谈会发言稿
2014/09/10 职场文书
简易离婚协议书范本
2014/10/24 职场文书
安全保证书格式
2015/02/28 职场文书
民事代理词范文
2015/05/25 职场文书
Html5页面播放M4a音频文件
2021/03/30 HTML / CSS
mongodb的安装和开机自启动详细讲解
2021/08/02 MongoDB
Java十分钟精通进阶适配器模式
2022/04/06 Java/Android
SQL Server使用导出向导功能
2022/04/08 SQL Server