Ответ 1
Чтобы прояснить, приведенный выше пример действительно работает, мой код в примере не работал по несвязанным причинам.
Если myvar является ложным, null или никогда ранее не использовался (т.е. $scope.myvar или $rootScope.myvar никогда не вызывается), div не будет отображаться. Как только какое-либо значение будет присвоено ему, div отобразит, за исключением случаев, когда значение имеет значение false.
Следующее приведет к тому, что div отобразит:
$scope.myvar = "Hello World";
или
$scope.myvar = true;
Следующее скроет div:
$scope.myvar = null;
или
$scope.myvar = false;