Given this test case using AngularJS 1.2 rc3: http://plnkr.co/edit/MX6otx (repeated below)
1.
<li ng-init="toggle1 = false"> ng-if toggle1: {{ toggle1 }} <p> <button ng-if="!toggle1" ng-click="toggle1 = true">Turn On</button> <button ng-if="toggle1" ng-click="toggle1 = false">Turn Off</button> does not work </li>
2.
<li ng-init="obj={toggle2:false}"> ng-if obj.toggle2: {{ obj.toggle2 }} <p> <button ng-if="!obj.toggle2" ng-click="obj.toggle2 = true">Turn On</button> <button ng-if="obj.toggle2" ng-click="obj.toggle2 = false">Turn Off</button> then why does this work? </li>
Questions:
ng-if is better in this regard. Using it in place of ng-show will prevent the heavy content from being rendered in the first place if the expression is false. However, its strength is also its weakness, because if the user hides the chart and then shows it again, the content is rendered from scratch each time.
For a single btn, it's ok to use ng-click or onclick in the ng-app . There is no difference between the two functions. For effective team work, you,d better to have an account with each other. In Angular apps, ng-click is recommended.
When an HTML is clicked, the ng-click directive tells the AngularJS script what to do. In this article, we will learn how to get many/multiple functions to the ng-click directive passed, in just one click. The key is to add a semi-colon (;) or a comma (,). All the functions must be separated by a (;) or a (, ).
The ng-click directive defines AngularJS code that will be executed when the element is being clicked.
This scope inheritance mechanism is explained very well in https://github.com/angular/angular.js/wiki/Understanding-Scopes
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With