2014-02-08 1 views
0

안녕 파일 경로를 설정하고 AngularJS와의 코드를 조직내가 하나 개라는 파일 main.js에 정의 된 모듈, 경로 및 컨트롤러 다음 한

var mainApp = angular.module("mainApp", ["ngRoute", "ngResource", "ui"]). 
    config(function ($routeProvider) { 
     $routeProvider. 
      when('/addEmp', { controller: EmpCtrl, templateUrl: 'addEmp.html' }). 
      when('/addLoc', { controller: LocCtrl, templateUrl: 'newLocation.html' }). 
     otherwise({ redirectTo: '/' }); 
    }); 



mainApp.factory("addEmp", ['$resource', function ($resource) { 
    return $resource('/api/addEmp/:id', { id: '@id' }, { update: { method: 'PUT' } }); 
}]); 

mainApp.factory("addLoc", ['$resource', function ($resource) { 
    return $resource('/api/newLoc/:id', { id: '@id' }, { update: { method: 'PUT' } }); 
}]); 


//Controllers 
var EmpCtrl = function ($scope, $location, addEmp) { 

    //code here 
}; 

var LocCtrl = function ($scope, $location, newLocation) { 

    //code here 
}; 

내가 뭘하려고 오전 가지로이 하나 개의 파일에 코드를 정리하다 파일. EmpCtrl.js 및 LocCtrl.js와 같은 컨트롤러 용 개별 파일을 만들고자하는 스크립트/컨트롤러 폴더를 만들었습니다. 컨트롤러 파일을 생성하고 컨트롤러 코드를 복사하면 EmptCtrl 및 LocCtrl 오류가 발생합니다. 적절한 경로 설정을 사용하여 다른 폴더에 어떻게 설정할 수 있습니까? 감사

+0

EmpCtrl.js 및 LocCtrl.js를 스크립트에 추가하십시오 태그들 –

답변

0

당신 empCtrl 및 locCtrl 스크립트 열쇠는 당신이 당신의 완패에 컨트롤러를 참조하는 문자열 이름을 사용한다는 것입니다 전에 mainApp.js 파일을 포함해야합니다 귀하의 HTML에서이

angular.module("mainApp", ["ngRoute", "ngResource", "ui"]). 
    config(function ($routeProvider) { 
     $routeProvider. 
      when('/addEmp', { controller: 'empCtrl', templateUrl: 'addEmp.html' }). 
      when('/addLoc', { controller: 'locCtrl', templateUrl: 'newLocation.html' }). 
     otherwise({ redirectTo: '/' }); 
    }); 



    //in empCtrl.js file 
    angular.module('mainApp').controller('empCtrl', ['$scope', '$location', 'addEmp', 
     function ($scope, $location, addEmp) { 
     //code here 
    }]); 

    // same for locCtrl 

시도 CONFIGS

{ controller: 'empCtrl' ... } 

대신

{ controller: EmpCtrl ... } 
,

각도 프로젝트를 모듈화하는 데 require.js를 사용하는 것이 좋습니다. 스크립트 포함 순서에 대해 걱정할 필요가 없으며 더 깨끗한 프로젝트가 될 것입니다.