Yeoman 앱에서 Grunt Build를 사용한 최소화 후 각도 "Unknown Provider" 오류 발생
에 문제가 있습니다.grunt buildYooman에서 생성된 Angular 앱은 커피와 슬림이며 모든 라이브러리가 최신입니다.(이 앱은 최신 제너레이터로 며칠 전에 생성되었습니다.)
grunt build그리고.grunt server처음에는 둘 다 잘 작동했어요.하지만 며칠간의 개발 끝에grunt server, 나는 그것을 발견했다.grunt build완전히 작동을 멈춘 상태였어요.
내가 고친 몇 가지 다른 문제들이 있었다.가장 큰 것은 인덱스 파일 때문에 Slim을 완전히 포기하고 스트레이트 HTML을 사용해야 했다는 것입니다.grunt build에 공개되었을 때 인덱스 파일의 80%를 설명 없이 삭제하고 있었습니다./dist.
안타깝게도 거의 모든 것을 해결한 후 Angular 명령 중 하나에 다음과 같은 오류가 표시되기 시작했습니다.
검출되지 않은 오류: 알 수 없는 공급자: aProvider <- a
문제는 미증유의 문제인 것 같다.여기서 보고한 것과 같은 문제일 수도 있다고 생각합니다만, 확실히는 모르겠습니다.여러 가지 솔루션을 시도했지만, 유일하게 효과가 있었던 것은 cofeescript에서 clean js 파일을 수동으로 생성하고 파일을 복사한 것입니다./dist에 경로를 씁니다.dist/index.html.
확실히 그건 최적이 아니야.Grunt에서는 (아마도 위의 링크에 있는 다른 사용자와 마찬가지로 빌드 프로세스에서 완전히 최소화를 제거함으로써) 더 깔끔한 방법이 있을 것입니다만, 저는 아직 처음이라 그 방법을 모릅니다.어느 쪽이든 회피책이 될 수 있습니다.
내 Grunt 파일은 매우 기본적입니다.기본 파일에는 grunt-connect-proxy, grunt-contrib-sass 및 grunt-slim만 추가되어 있습니다.사실 새로 생성된 Grunt 파일을 가져오려고 했지만 더 나은 파일이 구축되지 않았습니다.
실패한 지시는 다음과 같습니다.이 에러는 컨트롤러의 첫 번째 줄에 표시됩니다.$scope.showInput = false답답한 것은 모든 것이 잘 작동한다는 것이다.grunt server하지만 내가 짓는 순간, 그것은 완전히 무너진다.
myModule.directive "editable", ->
controller = ($scope) ->
$scope.showInput = false
$scope.saveContent = ->
$scope.toggleContent()
$scope.save()
linker = (scope, element, attrs) ->
scope.toggleContent = ->
scope.showInput = not scope.showInput
setTimeout((-> element.find('input').focus()), 100)
return DDO =
restrict: 'E'
controller: controller
link: linker
templateUrl: "template/editable.html"
scope:
editableType: "@"
text: "="
placeholder: "@"
save: "&"
(템플릿은 그다지 중요하지 않습니다.그냥...ng-switch를 사용하여 전환합니다.$scope.showInput.)
제안해주시면 감사하겠습니다.
Angular가 의존성 주입을 위한 인수 이름에 의존하는 일반적인 문제처럼 들립니다.종속성을 전달할 때 종속성 이름을 문자열로 포함하면 Angular가 최소화 프로세스에서 문자열 값이 변경되지 않으므로 최소화 후 주입할 항목을 알 수 있습니다.
myApp.controller('myCtrl', ['$scope', '$http', function($scope, $http) {
}])
언급URL : https://stackoverflow.com/questions/20340644/angular-unknown-provider-error-after-minification-with-grunt-build-in-yeoman-a
'source' 카테고리의 다른 글
| 각도 각도 조절기 - E2E 테스트 후 브라우저를 열어 둡니다. (0) | 2023.02.08 |
|---|---|
| Wordpress RSS2 피드에 CORS 지원을 추가하는 방법 (0) | 2023.02.08 |
| Apache Spark에서 여러 줄의 JSON 읽기 (0) | 2023.02.08 |
| 불변 위반:Connect(SportsDatabase)의 컨텍스트 또는 소품에서 "스토어"를 찾을 수 없습니다. (0) | 2023.02.08 |
| Rails에서 to_json을 재정의하는 방법 (0) | 2023.02.08 |