2014-12-10 2 views
0

정말 간단합니다 (아래 코드). 두 html 페이지, test.htm 및 ang.htm 있습니다. ang.htm 페이지에 대한 하나의 하이퍼 링크로 test.htm을 시작합니다. ang.htm에는 Hello World를 수행하는 간단한 컨트롤러가 하나있는 각도 j가 포함되어 있습니다. 하이퍼 링크를 클릭하여 ang.htm으로 이동합니다. 각도 코드를 실행하려면 ang.htm 페이지를 새로 고쳐야합니다. 왜 그런가요?AngularJS는 새로 고침하지 않으면 컨트롤러를 실행하지 않습니다.

test.htm을

<html> 
<body> 
<a href="http://localhost/ang.htm">Click</a> 
</body> 
</html> 

ang.htm

귀하의 코드가 작동
<html> 
<body ng-app="testApp" ng-controller="testController"> 
    {{hello}} 

    <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.5/angular.min.js"></script> 

    <script> 
     angular.module("testApp", []); 

     angular.module("testApp").controller("testController", function($scope) 
     { 
      $scope.hello = "Hello world"; 
     }); 
    </script> 
</body> 
</html> 
+0

예, 작동합니다. btw, 머리를 더 잘 옮길 스크립트 –

+0

으로 움직이는 스크립트가 작동하지 않습니다. 조언 해주셔서 감사합니다. – Craig

답변

3

내가 전용 파일 구조에 따라에 로컬 호스트/ang.htm에 /ang.htm을 변경 : 나는 복사

주/바이올린에 ang.htm 내용을 붙여 넣기 . 그것은 예상대로 작동합니다.

Firebug로 디버깅하는 것이 좋습니다.

<!DOCTYPE html> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<title></title> 
    </head> 
    <body> 
     <a href="/ang.htm">Click</a> 
    </body> 
</html> 
+1

문제가 Chrome의 AngularJS Batarang 확장 프로그램이라고 말하면 창피합니다. 최근에 다른 개발자와 문제를 일으킨 힌트 .js 파일로 업그레이드 한 것 같습니다. 방금 해제했는데 모든 것이 잘 작동합니다. 나는 Firefox를 대신 사용해 보라고 제안함으로써 올바른 방향으로 나를 넣은 것처럼 느낍니다. 일단 거기에서 작동하면 문제는 Chrome과 내가 최근에 보았던 힌트 .js와 관련이 있다는 것을 알았습니다. – Craig

+0

그걸 해결하게되어 기쁩니다. – ambitiouz

+0

그런 종류의 문제에 관해서 기쁘게 생각합니다! – blint

0

, 바이올린이 이야기 : http://jsfiddle.net/m7beqvaf/

{{hello}} 토큰은 페이지가로드되는 즉시 교체되지 않을 수 있지만 그게 전부입니다. ang.htm으로 이동하는 것은 문제가되지 않습니다.

<body ng-app="testApp" ng-controller="testController"> 
    {{hello}} 

    <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.5/angular.min.js"></script> 

    <script> 
     angular.module("testApp", []); 

     angular.module("testApp").controller("testController", function($scope) 
     { 
      $scope.hello = "Hello world"; 
     }); 
    </script> 
</body> 
+0

새 브라우저 탭에 있기 때문에 jsfiddle에서 작동합니다. 어떤 이상한 이유로 탐색 할 때 동일한 브라우저 탭에 머물러서는 각도가 올바르게 부트 스트랩되지 않습니다. 수동으로 부트 스트랩을 시도했지만 실패했습니다. 신비. – Craig

+0

게시 한 코드가 정확합니다. 어쨌든 우리가'ang.htm' 파일 전체를 제공 할 수는 있습니다. – blint

+0

그게 전부입니다. 간단합니다. 하지만이 경우 두 개의 htm 파일이 포함되어 있으므로 jsfiddle에서 반복 할 수 없습니다. 이 두 파일을 웹 서버에 놓고 실행 해보면 내가 말하는 것을 볼 수 있습니다. 내가 예측할 수있는 것은 네비게이션 이벤트가 각도에 의해 처리되지 않아서 스코프 다이제스트 등을 실행하려고 시도하지 않았기 때문에 각이 실행되고 있지 않다는 것입니다. – Craig

관련 문제