2017-04-22 1 views
0

requirejs를 사용하여 앵귤러 웹 응용 프로그램을 사용하고 있습니다. 그 잘 작동하지만 난 concat 및 grunt 작업 주자를 통해 하나의 파일에 모든 js 파일을 minifying하려고 할 때 위에서 언급 한 오류를주는 시작했다. 내가 문제와 공통 해결책에 대해 온라인으로 조사했는데 모듈이나 서비스가 삽입되어 있지 않은 서비스가 철자가 잘못되었을 수 있습니다. 모든 철자법, 따옴표 등을 다시 확인했습니다. 이 문제를 해결할 수 없습니다.

여기 내 append.js 파일에 의존성이있는 주요 모듈이 나열되어 있습니다.

return angular 
.module('arteciateYeomanApp', [ 
'arteciateYeomanApp.controllers.MainCtrl', 
'arteciateYeomanApp.controllers.AboutCtrl', 
'arteciateYeomanApp.services.Xhr', 
'arteciateYeomanApp.services.Common', 
'arteciateYeomanApp.controllers.ArtworkCtrl', 
'arteciateYeomanApp.controllers.AddAccountCtrl', 
'arteciateYeomanApp.controllers.AddArtgroupCtrl', 
'arteciateYeomanApp.controllers.AddArtistCtrl', 
'arteciateYeomanApp.controllers.AddArtworkCtrl', 
'arteciateYeomanApp.controllers.AddCampaignsCtrl', 
'arteciateYeomanApp.controllers.AddGenreCtrl', 
'arteciateYeomanApp.controllers.AddInstitutionCtrl', 
'arteciateYeomanApp.controllers.AdminSignupCtrl', 
'arteciateYeomanApp.controllers.ArtistInfoCtrl', 
'arteciateYeomanApp.controllers.DirectUserSignupCtrl', 
'arteciateYeomanApp.controllers.ErrorCtrl', 
'arteciateYeomanApp.controllers.ForgotPasswordCtrl', 
'arteciateYeomanApp.controllers.GroupBuyingCtrl', 
'arteciateYeomanApp.controllers.LoginCtrl', 
'arteciateYeomanApp.controllers.AdminLoginCtrl', 
'arteciateYeomanApp.controllers.ResetPasswordCtrl', 
'arteciateYeomanApp.controllers.SignupCtrl', 
'arteciateYeomanApp.controllers.UnblockUserCtrl', 
'arteciateYeomanApp.controllers.UpdatePasswordCtrl', 
'arteciateYeomanApp.controllers.DashboardCtrl', 
'ngRoute','ngResource']).config(.....); 

여기는 js 파일을 축소하기 위해 실행중인 무언가 작업입니다.

여기

grunt.registerTask('dev', ['requirejs' ]); 

이 작업이 내가 여기에 뭔가 잘못하고 있어요 있으면 알려 주시기 바랍니다 스크립트를

requirejs : { 
    compile : { 
     options : { 
      baseUrl : "<%= yeoman.app %>/scripts", 
      mainConfigFile : "<%= yeoman.app %>/scripts/main.js", 
      name : "main", 
      out : "requireArterciate.js" 
     } 
    } 
} 

를 실행하는 작업 등록.

+0

무엇이 전자입니까? 오류 메시지에는 오류를 일으킨 서비스를 파악하는 데 도움이 될 수있는 호출 스택이 포함되어 있지만 질문에서 생략되었습니다. 이 문제는 서비스에 제대로 주석이 달려 있지 않아 앱을 축소 할 준비가되지 않았기 때문에 발생했을 가능성이 큽니다. https://docs.angularjs.org/guide/di#using-strict-dependency-injection을 사용하십시오. – estus

답변

0

angularjs 코드를 축소해야하는 경우 다음 표준 형식 구문을 사용하여 컨트롤러를 정의하고 종속성을 주입하십시오. 참조 : Dependency Injection

angular.module('test').controller('testController', testController); 
testController.$inject = ['$scope', '$rootScope']; 
function testController($scope, $rootScope) {}; 
관련 문제