包含ngRoute后,角度控制器无法正常工作

时间:2017-01-03 02:39:42

标签: angularjs

这是我的ngRoute(AngularApp.js)

var app = angular.module('app', ['ngRoute']);
app.config(function($routeProvider, $locationProvider){

$routeProvider.
    when('/register', {templateUrl: 'partials/AdminPage/register.html', controller: 'registerCtrl'}).
    when('/updateEmployee', {templateUrl: 'partials/AdminPage/updateEmployee.html', controller: 'updateEmployeeCtrl'}).
    when('/designers',{templateUrl: 'partials/CreateSurvey/design.html',controller: 'DesignCtrl'});

});

这是我的其他控制器(AngularApp2.js)`

的另一个js文件
var app = angular.module("myApp", []);

app.controller('myController',function($scope,$http){

    $http.get('data.json').success(function(response){

        $scope.myData = response;
    });
    $scope.removeName = function(row) {
        $scope.myData.splice($scope.myData.indexOf(row),1);
    }
});

但是当我在下面的一个文件中包含两个角度代码时,'myController'无效。

var app = angular.module('app', ['ngRoute']);

app.config(function($routeProvider, $locationProvider){

$routeProvider.
    when('/register', {templateUrl: 'partials/AdminPage/register.html', controller: 'registerCtrl'}).
    when('/updateEmployee', {templateUrl: 'partials/AdminPage/updateEmployee.html', controller: 'updateEmployeeCtrl'}).
    when('/designers',{templateUrl: 'partials/CreateSurvey/design.html',controller: 'DesignCtrl'});

});

app.controller('myController',function($scope,$http){

    $http.get('data.json').success(function(response){

        $scope.myData = response;
    });
    $scope.removeName = function(row) {
        $scope.myData.splice($scope.myData.indexOf(row),1);
    }
});

我犯的错误是什么?

2 个答案:

答案 0 :(得分:2)

你有两个不同的模块appmyApp但是从不注入一个作为另一个的依赖

假设您的ng-app使用app作为主要模块,您需要将myApp模块注入app个模块,或者使两个名称相同,这样您只有一个模块

答案 1 :(得分:2)

你有问题

var app = angular.module('app', ['ngRoute']);

它应该

var app = angular.module('myApp', ['ngRoute']);

如果您是第一种方式,请确保使用HTML中的ng-app="app"

<强> DEMO