このコントローラーは問題なく動作します。
function airlineRouter($routeProvider) {
$routeProvider
.when('/',
{
templateUrl:"partials/destinations.html",
controller: function($scope) {
$scope.setActive('destinations');
} //end controller
});
} //end airlineRouter
コントローラーを独自の JS ファイルにすると、動作しなくなります。このような:
function airlineRouter($routeProvider) {
$routeProvider
when('/',
{
templateUrl:"partials/destinations.html",
controller: "DestinationsCtrl"
});
} //end airlineRouter
私のコントローラーファイルは「root/js/controllers/destinations.js」にあります。これは、私の「app.js」ファイルが存在するフォルダーと同じです。完全な「app.js」ファイルは次のようになります。
angular
.module('airline', ['ngRoute'])
.config(airlineRouter);
function airlineRouter($routeProvider) {
$routeProvider
.when('/',
{
templateUrl:"partials/destinations.html",
controller: "DestinationsCtrl"
}
);
} //end airlineRouter
私の完全なコントローラー JS ファイルは次のようになります。
function DestinationsCtrl($scope) {
$scope.setActive('destinations');
} //end DestinationsCtrl
私がやっているこのtutが言うように、なぜ私のコントローラは関数名でロードされないのですか? tut のファイルは機能しているようです。私のはそうではありません。
編集: コンソール ログに次のように表示されます: エラー: [ng:areq] 引数 'DestinationsCtrl' は関数ではなく、未定義です
編集2:私がやろうとしていることを誰かがよりよく理解できるなら、私が取り組んでいたtutは「Nesting Scopes」と呼ばれていました。