AngularJS newbie here ....我在这里有一个应用程序的基本框架:
http://plnkr.co/edit/HlQvMKF735YrBL2tOYGf?p=preview
该应用程序包含一个app.js和几个子模型/控制器。
app.js:
var app = angular.module('MyApp', ["ngRoute","page1","page2"]);
app.config(['$routeProvider', function ($routeProvider) {
//$routeProvider.otherwise({redirectTo: '/page1/'}); // this works just fine if uncommented
}]);
app.controller('MainCtrl', function($scope) { // none of this works
$scope.pageTitle = "Page Title"; //
$scope.myName = 'Scott';
$scope.hideSessionInfo = true;
$scope.toggleSessionData = function() {
console.log('toggleSessionData');
$scope.hideSessionInfo = !$scope.hideSessionInfo;
};
});
我希望有一个顶级控制器来处理ng-view之外的项目状态。 (即显示/隐藏一些服务器会话信息)
我不能让这个外层控制器工作。路线上的控制器工作正常。
我知道我在做一些根本错误的事情,但我无法弄明白。
通过将ng-controller添加到正文并为其提供全局控制器名称来修复。
谢谢, 斯科特
答案 0 :(得分:3)
<div ng-controller ="MainCtrl">
<div ng-view></div>
</div>
通常应该有效。您需要通过指令附加控制器(此处为ng-controller和ng-view,它根据路径切换控制器)。