在rails上使用angularjs和ruby时出现未知的Provider e-provider错误

 多米音乐_34053121 发布于 2023-02-10 11:35

我有一个Rails/AngularJS应用程序,在本地开发环境中工作正常.但是,当我将此应用程序部署到Amazon Cloud时,AngularJS会在浏览器控制台中返回此错误:

Unknown provider: eProvider <- e

但它在开发环境中工作正常.

我从我的一个javascript文件中访问以下服务..例如: -

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),但没有一个能帮助我.请帮我..

提前致谢

1 个回答
  • 经过数小时的研究后终于得到了解决方案

    解决块中存在缩小安全注释的问题.此代码给出了上述错误.

    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;
        }];
    }
    

    2023-02-10 11:38 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有