Я всегда думал, что ngShow и ngHide действуют как логические эквиваленты друг другу. Однако эта вера потрясена неожиданным поведением ngShow, когда задействован пустой массив.
Ниже представлен демонстрационный плунжер . Почему не ng-show="!emptyArray" ведет себя как ng-hide="emptyArray"?