ng-show и ng-hide это так называемые "функции" которые работают с стилем "display" используемого элемента. Работают они следующим образом:
Атрибутом к элементу ставите например ng-show="test()".
test(); - это функция, которая будет возвращать либо true, либо false.
Эти значения и будут говорить о том, будет ли отображен элемент или нет.
Например:
<div ng-show="test()"></div>
$scope.test = function(){
return true;
}
В таком случае div будет отображаться, а если функция test() вернет false, стилю display данного блока будет присвоено значение "none". и отображаться оно не будет