ローカル開発環境で正常に動作するRails/AngularJSアプリがあります。ただし、このアプリをAmazon Cloudにデプロイすると、AngularJSはブラウザーコンソールに次のエラーを返します。
Unknown provider: eProvider <- e
ただし、開発環境では正常に機能します。
私は私のjavascriptファイルの1つから以下のサービスにアクセスしています..例えば:-
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の使用)を試しましたが、どれも私を助けていません。私を助けてください..
前もって感謝します
何時間もの研究の末、ついに解決策を得ました。
解決ブロックにminification-safeアノテーションの問題がありました。このコードは上記のエラーを出していました。
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;
}];
}
私の場合(Railsアプリ)、uglifier
からGemfile
gemを削除してから、config/environments/production.rb
の構成行を削除する必要がありました。
config.assets.js_compressor = :uglifier
私の場合
app.config(function ($stateProvider) {
$stateProvider
.state('A', {
...,
});
});
に変更されました
app.config(["$stateProvider", function ($stateProvider) {
$stateProvider
.state('A', {
...,
});
}]);
その後、縮小が機能します