반응형
레일에서 angularjs 및 루비를 사용하는 동안 알 수 없는 공급자 e-provider 오류가 발생했습니다.
레일/각형이 있습니다.현지 개발 환경에서 잘 작동하는 JS 앱.하지만 아마존 클라우드에 이 앱을 배포했을 때 AngularJS는 브라우저 콘솔에서 다음 오류를 반환합니다.
Unknown provider: eProvider <- e
하지만 개발 환경에서는 잘 작동합니다.
저는 제 자바스크립트 파일 중 하나에서 아래 서비스에 접속하고 있습니다.예:-
userList. storeActorListWithId()
제가 할 일은 다음과 같습니다.
woi.service('userList',['$rootScope', 'userAPI' , 'recoAPI', function($rootScope, userAPI, recoAPI){
var actorList = [];
var actorId = "";
return{
storeActorListWithId: function(data){
actorList = [];
angular.forEach(data,function(actor){
if(actor.castname)
{
actorList.push({name: actor.castname,id: actor.castid});
}
})
} ,
getActorListWithId: function(){
return actorList;
},
storeActorId: function(id){
actorId = id;
},
getActorId: function(){
return actorId;
}
}
}]);
저의 application.js 파일은 아래와 같습니다.미니미네이션은 안전한가요, 아닌가요?
resolve: {
checkActorId: function($route,$location,$rootScope){
var url = $route.current.params.id;
var actorName = url.replace(/\-/g, " ").replace(/\~/g, "-").replace(/\$/g, "/");
var actorList = $rootScope.storeActorNameAndId;
if($rootScope.storeActorNameAndId){
angular.forEach(actorList, function(actor, key){
if(actor.name == actorName){
$rootScope.actorid = actor.id;
}
});
}
else
{
$location.path("home")
}
}
}
웹사이트에 제시된 많은 솔루션(DI 사용)을 시도해 보았지만 그 어느 것도 도움이 되지 않습니다.도와주세요..
미리 감사드립니다.
몇 시간 동안의 연구 끝에 마침내 해결책을 얻었습니다.
해결 블록에 최소화 안전 주석 문제가 발생했습니다.이 코드는 위의 오류를 주고 있었습니다.
resolve: {
setParams: function($rootScope, $route) {
$rootScope.Programmeid = $route.current.params.programmeid;
$rootScope.channelid = $route.current.params.channelid;
}
}
코드를 다음과 같이 변경하여 해결했습니다.
resolve: {
setParams: ['$rootScope', '$route', function($rootScope, $route) {
$rootScope.Programmeid = $route.current.params.programmeid;
$rootScope.channelid = $route.current.params.channelid;
}];
}
저의 경우 (레일스 앱)을 제거해야 했습니다.uglifier
나의 보석Gemfile
구성 라인을 제거합니다.config/environments/production.rb
:
config.assets.js_compressor = :uglifier
나 같은 경우에는
app.config(function ($stateProvider) {
$stateProvider
.state('A', {
...,
});
});
로 변경되었습니다.
app.config(["$stateProvider", function ($stateProvider) {
$stateProvider
.state('A', {
...,
});
}]);
그 다음에 미니미네이션이 효과가 있습니다.
언급URL : https://stackoverflow.com/questions/20604469/unknown-provider-e-provider-error-while-using-angularjs-and-ruby-on-rails
반응형
'programing' 카테고리의 다른 글
각도가 있는 분리된 DOM 트리JS/jQuery (0) | 2023.10.05 |
---|---|
SSH를 통해 로컬 컴퓨터로 mysqdump (0) | 2023.10.05 |
Oracle 및 MS SQL Server 결합 SQL 문 (0) | 2023.10.05 |
Angularjs는 지시문 내부의 양식 필드 유효성을 가져옵니다. (0) | 2023.10.05 |
결과 그룹화 없이 SUM() 사용 (0) | 2023.09.25 |