未捕获错误:[$ injector:unpr]未知提供者:eProvider< - e部署到heroku时

时间:2014-09-01 13:52:56

标签: ruby-on-rails angularjs heroku

我遇到此错误:未捕获错误:[$ injector:unpr]未知提供商:eProvider< - e成功部署到Heroku后

我使用角度社交分享btw: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 个答案:

答案 0 :(得分: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');
}]);

答案 1 :(得分:2)

多数民众赞成正确我必须将我的coffeescript文件更改为

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

为了让它发挥作用。请注意n#39; $ scope',' $ location'