2016-04-04 2 views
1

Я написал небольшой контроллер, где я объявляю переменную с ключевым словом var, которая не входит в область видимости. означает ли это, что это личное пространство? см. мой код.AngularJS как объявить приватную переменную и функцию в контроллере

<div ng-app="myApp" ng-controller="myCtrl"> 
{{test}} 
</div> 

var app = angular.module('myApp', []); 
app.controller('myCtrl', function ($scope) { 
     var test='test hello'; 
    $scope.Operantion = 'hello'; 
    $scope.GetData = function() { 
     abc(); 
    }; 

    function abc() 
    { 
     alert(test); 
    } 
    $scope.GetData(); 
}); 

переменную переменной var следует рассматривать как частную переменную?

Если я объявляю функцию только с функцией xxx(), ее следует рассматривать как частную функцию. Я новичок в угловой. поэтому при тестировании кода возникает много вопросов. поэтому, пожалуйста, направляйте меня. thanks

ответ

2

Сфера - это объект, в котором вид может видеть и считывать значения из него. Объявляя «var», вы создаете объект за пределами области действия, но в контексте функции контроллера.

BUT html, который поставляется с этим контроллером через атрибут ng-controller, например, может видеть только свойства области действия этого контроллера.

+0

как объявить приватную переменную и функцию внутри контроллера? – Mou

+1

просто используйте 'var aa'. он будет локальным для вашего контроллера – AlainIb