Я пытаюсь отобразить div, если объект не пуст. Используя this ответ, Im пытается использовать angular.equals
проверить пустота, но это не ведет себя, как и ожидалосьВыполняет ли угловые выражения() угловые выражения?
var test = angular.module('test',[]);
test.controller('testCtrl', ['$scope', function($scope){
$scope.foo={};
$scope.bar="bam"
}]);
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="test">
<div ng-controller="testCtrl">
<div ng-show="!angular.equals(foo,{})">{{bar}}</div>
</div>
</div>
Ожидание здесь является то, что значение bar
покажет только если foo
не равно пустой объект. Однако foo
, очевидно, установлено {}
и еще bar
все еще показывает.
Можете ли вы доступ Корнескоп из углового выражения? –
@DavidGrinberg вы можете получить доступ к чему-либо, определенному на корневом корешке, из углового выражения, плюс все остальные области, наследуемые от корнеплодов. Если вы измените JS на '$ rootScope.angular = angular;' пример в ответе будет вести себя одинаково. – Philipp