diff --git a/js/angular/directive/view.js b/js/angular/directive/view.js index bf39433556..1b49f837b3 100644 --- a/js/angular/directive/view.js +++ b/js/angular/directive/view.js @@ -59,19 +59,21 @@ IonicModule } - if (angular.isDefined($attr.hideBackButton)) { - $scope.$watch($attr.hideBackButton, function(value) { - // Should we hide a back button when this tab is shown - navBarCtrl.showBackButton(!value); - }); - } + var hideBackAttr = angular.isDefined($attr.hideBackButton) ? + $attr.hideBackButton : + 'false'; + $scope.$watch(hideBackAttr, function(value) { + // Should we hide a back button when this tab is shown + navBarCtrl.showBackButton(!value); + }); - if (angular.isDefined($attr.hideNavBar)) { - $scope.$watch($attr.hideNavBar, function(value) { - // Should the nav bar be hidden for this view or not? - navBarCtrl.showBar(!value); - }); - } + var hideNavAttr = angular.isDefined($attr.hideNavBar) ? + $attr.hideNavBar : + 'false'; + $scope.$watch(hideNavAttr, function(value) { + // Should the nav bar be hidden for this view or not? + navBarCtrl.showBar(!value); + }); }; } diff --git a/test/unit/angular/directive/view.unit.js b/test/unit/angular/directive/view.unit.js index 69acf38d8a..c77235f8c5 100644 --- a/test/unit/angular/directive/view.unit.js +++ b/test/unit/angular/directive/view.unit.js @@ -57,6 +57,11 @@ describe('ionView directive', function() { expect(el.controller('ionNavBar').showBackButton).toHaveBeenCalledWith(true); }); + it('should show back button by default', function() { + var el = setup(); + expect(el.controller('ionNavBar').showBackButton).toHaveBeenCalledWith(true); + }); + it('should showBar depending on what is given', function() { var el = setup('hide-nav-bar="shouldHide"'); expect(el.controller('ionNavBar').showBar).toHaveBeenCalledWith(true); @@ -66,6 +71,11 @@ describe('ionView directive', function() { expect(el.controller('ionNavBar').showBar).toHaveBeenCalledWith(true); }); + it('should showBar by default', function() { + var el = setup(); + expect(el.controller('ionNavBar').showBar).toHaveBeenCalledWith(true); + }); + it('should setTitle on change, but not with initial value', function() { var el = setup('title="{{something}}-1"'); //Should not setTitle with initial value