AngularJS輔助庫(kù)browserTrigger用法示例
本文實(shí)例講述了AngularJS輔助庫(kù)browserTrigger用法。分享給大家供大家參考,具體如下:
今天推薦一款來(lái)自angularjs源碼的單元測(cè)試輔助庫(kù)browserTrigger,這是來(lái)自于ngScenario的一段代碼。主要用戶觸發(fā)瀏覽器型行為更新ng中scope view model的值。
這是angularjs源碼中單元測(cè)試的使用browserTrigger的實(shí)例:
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,則它會(huì)幫助你tigger change,選中當(dāng)前option,更觸發(fā)更新ng select的viewmodel。
在browserTrigger中還為我們做了很多其他輸入框或者h(yuǎn)tml控件的觸發(fā)接口,同時(shí)也加入了瀏覽器的兼容性。使得我們的測(cè)試更加方便不用考慮瀏覽器兼容性或者不同的html控件trigger不同的事件去更新scope的值。
具體更多信息可參考ng的官方測(cè)試和browserTrigger源碼。
希望本文所述對(duì)大家AngularJS程序設(shè)計(jì)有所幫助。
相關(guān)文章
詳解Angular.js的$q.defer()服務(wù)異步處理
相信大家都知道jquery和angular都有defer服務(wù),這篇文章暫以angular為例談?wù)剛€(gè)人的理解,在文章的最后并附上jquery的阮一峰總結(jié)的defer。有需要的朋友們也可以參考借鑒,下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2016-11-11AngularJS頁(yè)面訪問(wèn)時(shí)出現(xiàn)頁(yè)面閃爍問(wèn)題的解決
這篇文章主要介紹了AngularJS框架使用中出現(xiàn)頁(yè)面閃爍問(wèn)題的解決方法,閃爍問(wèn)題一般是初始化未加載完畢造成的,需要的朋友可以參考下2016-03-03解決angular 使用原生拖拽頁(yè)面卡頓及表單控件輸入延遲問(wèn)題
這篇文章主要介紹了angular 中使用原生拖拽頁(yè)面卡頓及表單控件輸入延遲問(wèn)題,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-04-04angular+ionic 的app上拉加載更新數(shù)據(jù)實(shí)現(xiàn)方法
這篇文章主要介紹了angular+ionic 的app上拉加載更新數(shù)據(jù)實(shí)現(xiàn)方法,需要的的朋友參考下2017-01-01Angular實(shí)現(xiàn)搜索框及價(jià)格上下限功能
這篇文章主要為大家詳細(xì)介紹了Angular實(shí)現(xiàn)搜索框及價(jià)格上下限功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-01-01Angular中封裝fancyBox(圖片預(yù)覽)遇到問(wèn)題小結(jié)
這篇文章主要介紹了Angular中封裝fancyBox(圖片預(yù)覽)遇到的問(wèn)題小結(jié),需要的朋友可以參考下2017-09-09AngularJS $on、$emit和$broadcast的使用
本文主要介紹AngularJS $on、$emit和$broadcast的使用,這里整理了詳細(xì)的資料及簡(jiǎn)單示例代碼有興趣的小伙伴可以參考下2016-09-09angularJS的radio實(shí)現(xiàn)單項(xiàng)二選一的使用方法
下面小編就為大家分享一篇angularJS的radio實(shí)現(xiàn)單項(xiàng)二選一的使用方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-02-02AngularJS控制器之間的數(shù)據(jù)共享及通信詳解
本文詳細(xì)介紹了AngularJS控制器之間的數(shù)據(jù)共享與通信,對(duì)angularjs共享數(shù)據(jù)及通信相關(guān)知識(shí)感興趣的朋友可以一起學(xué)習(xí)。2016-08-08