14

由于愚蠢的第三方原因,我需要从 html 访问 $scope。

这就是我正在尝试的:

<html ng-app>
    <!-- head goes here-->
    <body>
        <!--Body goes here-->
        <script type="text/javascript">
            console.log($scope);
        </script>
    </body>
</html>
4

2 回答 2

16

因为angular是全局公开的,所以可以使用:

var scope = angular.element().scope()

例如,如果你的标记中有这个

<div ng-controller="someCtrl" id="someId">{{test}}</div>

您可以像这样访问控制器的隔离范围someCtrl

var scope = angular.element($("#someId")).scope()
scope.test = "Hello, world!";

(您可能还想 $apply 范围,请参见此处

于 2013-10-21T10:23:42.683 回答
2

Just use 'this'... it is a reference that points to the controller scope

于 2019-02-05T20:14:28.877 回答