ng-show vs ng-if
HTML
<div ng-app ng-controller="Controller">
<!-- ng-show example -->
<p>
<input type="checkbox" ng-model="obj.ngShow" /> <span ng-show="obj.ngShow">ng-show (This stays in the dom)</span>
</p>
<!-- ng-if example -->
<p>
<input type="checkbox" ng-model="obj.ngIf" /> <span ng-if="obj.ngIf">ng-if (This gets removed from the dom)</span>
</p>
</div>
JavaScript
function Controller($scope) {
// This comes from the server
$scope.obj = {
ngShow: true,
ngIf: true
};
}