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 相关文章推荐
User Scripts: Video Download by User Scripts
May 14 Javascript
JavaScript中数组成员的添加、删除介绍
Dec 30 Javascript
深入理解JavaScript系列(37):设计模式之享元模式详解
Mar 04 Javascript
MVVM模式中ViewModel和View、Model有什么区别?
Jun 19 Javascript
深入学习JavaScript的AngularJS框架中指令的使用方法
Mar 05 Javascript
微信小程序 教程之注册程序
Oct 17 Javascript
JS判断键盘是否按的回车键并触发指定按钮点击操作的方法
Feb 13 Javascript
JS实现异步上传压缩图片
Apr 22 Javascript
用Node提供静态文件服务的方法
Jul 06 Javascript
微信小程序实现保存图片到相册功能
Nov 30 Javascript
vue中使用props传值的方法
May 08 Javascript
js实现贪吃蛇游戏 canvas绘制地图
Sep 09 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得到mssql的存储过程的输出参数功能实现
2012/11/23 PHP
PHP的PSR规范中文版
2013/09/28 PHP
thinkphp框架实现数据添加和显示功能
2016/06/29 PHP
php异步:在php中使用fsockopen curl实现类似异步处理的功能方法
2016/12/10 PHP
js取两个数组的交集|差集|并集|补集|去重示例代码
2013/08/07 Javascript
Javascript中匿名函数的多种调用方式总结
2013/12/06 Javascript
使用javascript为网页增加夜间模式
2014/01/26 Javascript
js在数组中删除重复的元素自保留一个(两种实现思路)
2014/08/22 Javascript
JavaScript函数详解
2014/11/17 Javascript
JavaScript更改字符串的大小写
2015/05/07 Javascript
使用jQuery实现Web页面换肤功能的要点解析
2016/05/12 Javascript
Vue.js 2.0窥探之Virtual DOM到底是什么?
2017/02/10 Javascript
使用node.js对音视频文件加密的实例代码
2017/08/30 Javascript
js es6系列教程 - 新的类语法实战选项卡(详解)
2017/09/02 Javascript
angular4自定义组件非input元素实现ngModel双向数据绑定的方法
2018/12/28 Javascript
js实现点击图片在屏幕中间弹出放大效果
2019/09/11 Javascript
浅谈Vue2.4.0 $attrs与inheritAttrs的具体使用
2020/03/08 Javascript
js 解析 JSON 数据简单示例
2020/04/21 Javascript
JavaScript实现鼠标移入随机变换颜色
2020/11/24 Javascript
[40:17]2018DOTA2亚洲邀请赛 4.5 淘汰赛 LGD vs Liquid 第一场
2018/04/06 DOTA
Python多进程分块读取超大文件的方法
2016/04/13 Python
Python 在字符串中加入变量的实例讲解
2018/05/02 Python
将pip源更换到国内镜像的详细步骤
2019/04/07 Python
用uWSGI和Nginx部署Flask项目的方法示例
2019/05/05 Python
python3 下载网络图片代码实例
2019/08/27 Python
利用Python小工具实现3秒钟将视频转换为音频
2019/10/29 Python
python实现批量处理将图片粘贴到另一张图片上并保存
2019/12/12 Python
简单介绍一下pyinstaller打包以及安全性的实现
2020/06/02 Python
马来西亚和新加坡巴士票在线预订:CatchThatBus
2018/11/17 全球购物
一个C/C++编程面试题
2013/11/10 面试题
给导游的表扬信
2014/01/10 职场文书
高考备战决心书
2014/03/11 职场文书
企业授权委托书范本
2014/04/02 职场文书
安全负责人任命书
2014/06/06 职场文书
2014年连锁店圣诞节活动方案
2014/12/09 职场文书
六年级作文之预言作文
2019/10/25 职场文书