2015-01-30 5 views
-1

각도 js 코드를 1.2.26에서 1.3.12로 업그레이드했는데 갑자기 데이터 바인딩이 실패했습니다. 나는 1.3 스타일 컨트롤러를 따라 갔다. 조언 해주십시오각도 js 업그레이드 후 데이터 바인딩이 실패했습니다

<!DOCTYPE html> 
<html data-ng-app="myApp"> 

<head> 
<script src= "https://ajax.googleapis.com/ajax/libs/angularjs/1.3.11/angular.min.js"> </script> 
</head> 

<body> 

<p>Try to change the names.</p> 

<div ng-app="" data-ng-controller="PersonController"> 

First Name: <input type="text" data-ng-model="firstName"><br> 
Last Name: <input type="text" data-ng-model="lastName"><br> 
<br> 
Full Name: {{firstName + " " + lastName}} 

</div> 

<script> 
var myApp = angular.module('myApp', []).controller('PersonController', [funnction() { 
    $scope.firstName= "John"; 
    $scope.lastName= "Doe"; 
}]); 

</script> 

</body> 
</html> 

답변

2

먼저 입력란에 컨트롤러 대신 "컨트롤러"가 있습니다.

둘째 컨트롤러를 할당 한 div에서 두 번째 ng-app을 제거하십시오. 첫 번째 선언을 무시합니다.

Plunker

+0

나는 철자가 틀린 contoller를 보지 않았다. 두 번째 앱을 삭제해도 문제가 해결되지 않았습니다. 다시 확인할 수 있니? – johnsam

+0

플 런커에서 작동합니다. – Mosho

+0

감사합니다. 그리고 두 번째 ng-app를 제거해야한다는 것이 맞습니다. 그러나 또 다른 문제가 있습니다. 내 게시물보기. – johnsam

0

Mosho 내가 두 번째 NG-응용 프로그램을 제거해야하는 것이 올바른 것입니다. 그러나 또 다른 문제가 있습니다. 브래킷 쌍 컨트롤러를 제거해야합니다.

<script> 
angular.module('myApp', []).controller('PersonController', [function() { 

    $scope.firstName= "John"; 
    $scope.lastName= "Doe"; 
}]); 
</script> 

은 작동하지 않습니다.

<script> 

angular.module('myApp', []).controller('PersonController', function($scope) { 
    $scope.firstName= "John"; 
    $scope.lastName= "Doe"; 
}); 
</script> 

그것은 작동하기 시작 braket을 제거한 후. 나는 괄호가 필요하다는 것을 알았다 1.3

관련 문제