javascript - bootstrap - Error del proveedor desconocido del proveedor electrónico al usar angularjs y ruby en los rieles
fieldset legend bootstrap (3)
En mi caso (aplicación Rails), tuve que eliminar la gema uglifier
de mi Gemfile
y luego eliminar la línea de config/environments/production.rb
en config/environments/production.rb
:
config.assets.js_compressor = :uglifier
Tengo una aplicación Rails / AngularJS que funciona bien en el entorno de desarrollo local. Sin embargo, cuando implementé esta aplicación en Amazon Cloud, AngularJS devuelve este error en la consola del navegador:
Unknown provider: eProvider <- e
Sin embargo, funciona bien en el entorno de desarrollo.
Estoy accediendo al siguiente servicio desde uno de mis archivos javascript ... por ejemplo:
userList. storeActorListWithId()
Mi servicio es el siguiente:
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;
}
}
}]);
Mi archivo application.js es el siguiente. ¿Es segura o no?
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")
}
}
}
He probado muchas soluciones (uso de DI) en el sitio web, pero ninguna de ellas me está ayudando. Por favor, ayúdame..
Gracias por adelantado
Finalmente consiguió la solución después de horas de investigación.
Hubo un problema de anotación de minificación segura en el bloque de resolución. Este código estaba dando el error anterior.
resolve: {
setParams: function($rootScope, $route) {
$rootScope.Programmeid = $route.current.params.programmeid;
$rootScope.channelid = $route.current.params.channelid;
}
}
Lo resolví cambiando el código a esto:
resolve: {
setParams: [''$rootScope'', ''$route'', function($rootScope, $route) {
$rootScope.Programmeid = $route.current.params.programmeid;
$rootScope.channelid = $route.current.params.channelid;
}];
}
en mi caso
app.config(function ($stateProvider) {
$stateProvider
.state(''A'', {
...,
});
});
fue cambiado a
app.config(["$stateProvider", function ($stateProvider) {
$stateProvider
.state(''A'', {
...,
});
}]);
entonces funciona la minificación