1) $parent
относится к размеру родительского объекта (любой области). Все области имеют родителя отдельно от $rootScope
, который является областью верхнего уровня. Они могут быть созданы любой угловой директивой ng-*
, включая, но не ограничиваясь ими, ng-controller
.
Вообще говоря, считается неправильной практикой использования $parent
, потому что это относится к непосредственным родительским объектам, которые могут быть изменены. Если иерархия области действия изменяется (что она могла бы сделать, добавив директиву ng-*
к элементу html, содержащемуся в шаблоне пользовательской директивы, например), тогда иерархия может быть разбита, а $parent
не будет ссылаться на ту же область, что и когда-то.
2) Да, вы можете. В инструментах разработчика Chrome, если вы используете Right Click > Inspect Element
(как вы на снимке экрана), вы выбираете элемент. Тогда, если вы оставите этот элемент выделен и перейдите на вкладку консоли и введите:.
angular.element($0).scope()
Это возвращает объем, что выбранный элемент пребывает в Тогда, если вы наберете:
angular.element($0).scope().$parent()
Это возвращает родительский . объем сферы, что выбранный элемент проживает в а для чего это стоит вы также можете сделать:
angular.element($0).scope().$parent().$parent()
и продолжать идти вверх по иерархии области видимости.
Также ознакомьтесь с AngularJS Batarang chrome extension, который позволяет просматривать области в инструментах разработчика Chrome.
Посмотрите документацию для области информации о ее свойствах. –