angularjs之browserTrigger
生活随笔
收集整理的這篇文章主要介紹了
angularjs之browserTrigger
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
今天推薦一款來自angularjs源碼的單元測試輔助庫browserTrigger,這是來自于ngScenario的一段代碼。主要用戶觸發瀏覽器型行為更新ng中scope view model的值。
這是angularjs源碼中單元測試的使用browserTrigger的實例:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 | 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源碼。
本文轉自破狼博客園博客,原文鏈接:http://www.cnblogs.com/whitewolf/p/3807063.html,如需轉載請自行聯系原作者
總結
以上是生活随笔為你收集整理的angularjs之browserTrigger的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2017-01-09
- 下一篇: 架构设计中服务层的简单理解