1

私は4つのファイルを持っています:

  • index.html
  • logic.js
  • controller.js
  • ホームページ.html

index.html

<html ng-app="sample">
<head>
<script src="angular.js"></script>
</head>
<body>
<div>
    <div ng-view></div>
</div>    
    <script src="controller.js"></script>
    <script src="logic.js"></script>    
</body>
</html>

logic.js

var myapp = angular.module('sample',[]);
    myapp.config(function($routeProvider)
    {
        $routeProvider
            .when('/',
                {   
                    controller:homepageCtrl,
                    templateUrl:'homepage.html'             
            });
    });

controller.js

function homepageCtrl($scope){
        $scope.name = "ROHIT";}

ホームページ.html

{{name}}

ルートによって、homepage.html が読み込まれ、正しく表示されていますが、homepage.html が index.html に読み込まれると、ここでコントローラーが呼び出されません。

これで私を助けてください。

ありがとう

4

2 に答える 2

2

HTML でコントローラーを定義していません。

この行を追加

<div ng-controller = "homepageCtrl"> 

次の場所にあるとしますhomepage.html

<div ng-controller = "homepageCtrl">
   {{name}}
</div>

さらに、コントローラー名を次のようにラップします。' logic.js

[編集]

$injectrouteProviderに追加:

myapp.config(["$routeProvider",
function($routeProvider) {
    $routeProvider
        .when("/", {
            templateUrl: 'homepage.html', 
            controller: 'homepageCtrl'
        });
}
]);
于 2013-09-20T10:13:17.180 に答える
0

コントローラ名は $routeProvider に文字列として渡す必要があります:

$routeProvider
            .when('/',
                {   
                    controller:'homepageCtrl',
                    templateUrl:'homepage.html'             
            });
于 2013-09-20T10:14:43.537 に答える