1

함수 이름 (para1) {}과 같이 일반적인 함수 대신 AngularJS에서 거의 익숙하지 않은 함수를 사용합니다. 이 링크를 참조하십시오 : http://www.w3schools.com/angular/tryit.asp?filename=try_ng_controller_propertyAngularJS에서 항상 익명 함수를 사용하는 이유

정상적인 기능으로 바뀌지 만 작동하지 않으므로 알려주십시오. 감사. 당신이 당신의 템플릿에서 필드와 함수를 참조 할 수 있도록

<div ng-app="myApp" ng-controller="personCtrl as main"> 

First Name: <input type="text" ng-model="firstName"><br> 
Last Name: <input type="text" ng-model="lastName"><br> 
<br> 
Full Name: {{main.fullName()}} 

</div> 

<script> 
var app = angular.module('myApp', []); 
app.controller('personCtrl', function($scope) { 
    $scope.firstName = "John"; 
    $scope.lastName = "Doe"; 
    function fullName() { 
     return $scope.firstName + " " + $scope.lastName; 
    }; 
}); 
</script> 
+0

명명 된 함수를 사용하려면 다음과 같이 함수를 선언 할 수 있습니다. $ scope와 같이 지정할 수 있습니다. fullName = fullName; –

+0

예. 우리가 함수 이름() {}을 추가하면 작동 해 보았습니다. 하지만 $ scope – AngularJS

답변

1

$ 범위의 개념은 모든 필드와 함수에 정의 된 개체를하는 것입니다.

$scope에 기능을 연결하지 않으면 각도를 호출 할 수 없습니다. 따라서 컨트롤러 함수에서 필요한 모든 것을 프레임 워크에서 전달한 $scope 객체에 추가하면 나중에 해당 필드에 액세스하거나 템플릿에서 함수를 호출 할 수 있습니다. ng-model과 같이 지시하거나 {{ }}에 넣는 모든 각도는 각으로 평가되지만 각도는 코드 조각을 스 니펫 링크로 작성한 것으로 알지 못하거나 컨트롤러에서 찾을 수 없으면 main.fullName()으로 작성됩니다.

$scope의 개념에 대한 자세한 내용은 the angular docs on scopes을 참조하십시오.

+0

에 할당해야합니다. 더 많은 것을 읽을 수 있도록 참조 문서를 줄 수 있습니까? – AngularJS

+0

범위의 각도 문서를 살펴보십시오. 내 대답에 대한 링크를 추가했습니다. –

0

당신이 할 수있는 일 (또한 좋은 습관)은 함수를 선언 한 다음 (아마도 controlelr의 init에서) $ scope에 할당하는 것입니다.

+0

감사합니다. 이게 내가 원하는거야. 나는 또한 당신이했던 것과 비슷한 것을 본다. – AngularJS

+0

행복하다면 .. 행복하다면 .. plz rate it .. :-) thnx! –

+0

명성이 15가되면 평가 해 드리겠습니다. 고마워요. 멋진 주말 되세요. – AngularJS