angularjs - ng-if Function Gets Called on Click -


i have code on plnkr:

http://plnkr.co/edit/6wz4zub2seofhrqps0c8

the html code quite simple:

   <div ng-app="myapp" ng-controller="mainctrl">      <div ng-dropdown-multiselect="" options="mydata" selected-model="mymodel" extra-settings="mysettings" events="myevents"></div>        <div ng-repeat="item in items">          <item-input></item-input>        </div>            </div>    </div> 

basically, problem function in ng-if gets called every time click anywhere on page. think has multi-select control i'm not sure should fix it. appreciated.

thanks.

updated

what don't understand why behavior stops when comment out multi-select dropdown (<div ng-dropdown-multiselect="" options="mydata" selected-model="mymodel" extra-settings="mysettings" events="myevents"></div>)?

as shown in picture below, taken chrome devtools, multi-select dropdown generating 2 click event handlers :

enter image description here

one event on button , 1 on whole document. therefore, click on document triggering @ least last event handler, potentially changes model. angular digest cycle, , implies displayme function bound ngif directive evaluated in case element should removed of dom or not.

if remove dropdown component, , these 2 click handlers, left 3 text inputs. indeed, there no digest after click on document because no handler executed, can still trigger digests essentialy typing inside input elements.

this answer miško hevery has valuable info dirty-checking process in angular 1.x.


Comments

Popular posts from this blog

node.js - Mongoose: Cast to ObjectId failed for value on newly created object after setting the value -

[C++][SFML 2.2] Strange Performance Issues - Moving Mouse Lowers CPU Usage -

ios - Possible to get UIButton sizeThatFits to work? -