Как получить доступ к переменным тепла, используя элемент DOM div?

0

в приведенном ниже коде переменные определяются с помощью директивы ng-init, угловое выражение дает доступ к этим переменным,

    <body ng-app="">
        <div ng-init="arr = [1, 2, 3, 4];obj={x:1}">
            {{arr[0]}}
        </div>
    </body>

Используя код javascript,

    <body ng-app="">
        <div ng-init="arr = [1, 2, 3, 4];obj={x:1}">
            <script  type="text/javascript">
             //access arr[0] using div DOM object
            </script>
        </div>
    </body>

Я узнал, что данные напрямую привязаны к представлению (DOM).

Чтобы узнать, как работает ng-init директива under-hood, как мне получить доступ к arr[0] с помощью элемента div DOM?

  • 4
    Это очень плохая модель - какова ваша конечная игра?
  • 0
    Вам нужно создать модуль и контроллер с $ scope.
Показать ещё 6 комментариев
Теги:
dom
ng-init
angularjs-ng-init

2 ответа

0

Вам нужно добавить в приложение угловые компоненты. Сначала добавьте модуль своего приложения и добавьте контроллер этой области.

<html>
    <body ng-app="App">
            <div ng-controller="mainCtrl" ng-init="init()">
                {{arr[0]}}
            </div>
            <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.5/angular.min.js"></script>
            <script  type="text/javascript">
                var app = angular.module('App',[]);
                app.controller('mainCtrl', ['$scope', function($scope) {
                  $scope.arr = [];
                  $scope.obj = {};
                  $scope.init = function(){
                    $scope.arr = [1, 2, 3, 4];
                    $scope.obj={x:1};
                  };

                }]);  
                  
            </script>
           

    </body>
</html>
0

Вы можете получить доступ к нему только в контроллере. Код внутри контроллера будет выглядеть так:

var value = $scope.arr[0];

Ещё вопросы

Сообщество Overcoder
Наверх
Меню