angular
2017-09-27 108 views 2 likes 
2

我使用角2多選下拉菜單,它按照我預期的方式執行。使用(ngModelChange)兩次

我有以下提到的用法一個疑問:

<ss-multiselect-dropdown #dropdown [options]="dataObject" [texts]="myTexts" [settings]="mySettings" (ngModelChange)="onSelect($event)" (ngModelChange)='dropdown.clearSearch({})' [ngModel]="dataSelected"></ss-multiselect-dropdown> 

爲什麼沒有拋出使用ngModelChange兩次, 因爲,我已經綁定ngModelchange與ONSELECT($事件)錯誤?

感謝,

+0

爲什麼你認爲它應該拋出錯誤? – yurzui

+0

@yurzui,因爲ngModel綁定到dataSelected,並且dataSelected只更改一次,是否不應該只觸發一次ngModelChange? – CruelEngine

+1

它會多次點燃我們已訂閱 – yurzui

回答

1

如果您在ngModelsource code看你會看到,ngModelChange棱角分明的EventEmmiter。

您訂閱了這個emmiter兩次。沒有什麼不妥。

+1

我們可以把'ngModelChange'改成'click',這樣也沒有什麼問題。 addEventListener讓我們有機會 來處理兩個事件 – yurzui

+0

謝謝你的回覆@ taras-d,這清除了我的懷疑。 – CruelEngine

-2

您可以設置只有一個ngmodelChange;

+0

不,這正是我問這個問題的原因。 – CruelEngine

相關問題