部署到Heroku时出现错误:[$injector:unpr]未知提供程序:eProvider <- e。

5

在成功部署到Heroku后,我遇到了以下错误:Uncaught Error: [$injector:unpr] Unknown provider: eProvider <- e。

顺便说一下,我正在使用angular social share:https://github.com/djds4rce/angular-socialshare

删除run函数和模块名称djds4rce.angular-socialshare不会导致错误,但我非常需要它来进行FB分享。

//= require_self
//= require_tree ./angular

MyApp = angular.module( "MyApp", ["ui.router", "ngCsv", "ui.bootstrap", "ngResource", "templates", "angularFileUpload", "ngSanitize", "ngCookies", "textAngular", "djds4rce.angular-socialshare"] ).run(function($FB){
  $FB.init('1438666983087556');
});

有什么想法吗?谢谢。
2个回答

6

Rails会对js进行缩小,因此您需要使用不同的语法:

MyApp = angular.module( "MyApp", ["ui.router", "ngCsv", "ui.bootstrap", "ngResource", "templates", "angularFileUpload", "ngSanitize", "ngCookies", "textAngular", "djds4rce.angular-socialshare"] );

MyApp.run(['$FB', function($FB){
  $FB.init('1438666983087556');
}]);

非常感谢。我会记在心里的 @apneadiving - rukia_kuchiki_21

2

没错,我需要修改我的coffeescript文件为

@HomeCtrl = ['$scope', '$location', ($scope, $location) ->
    $scope.things  = ['Angular', 'Rails 4.1', 'Working', 'Together!!']
]

为了使它正常运行,请注意'$scope'、'$location'。

为什么需要这个?为什么这个语法不起作用:angular.module('App').controller "CommentsFormCtrl", ($scope, $routeParams, $http, CommentService) -> - Kaspar

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接