无法读取属性'log'Angular

Cannot read property 'log' of undefined Angular

本文关键字:log Angular 读取 属性      更新时间:2023-09-26

我希望这个不是太明显,但我需要一个完整性检查,我已经看了其他一些类似的帖子,但我似乎找不到错误。下面的服务和消费控制器。

服务
(function() {   
var notify = function(){    
    var logIt;
  toastr.options = {
    "closeButton": true,
    "positionClass": "toast-bottom-full-width",
    "timeOut": "10000"
  };
  logIt = function(message, type) {
    return toastr[type](message);
  };
  return {
    log: function(message) {
      logIt(message, 'info');
    },
    logWarning: function(message) {
      logIt(message, 'warning');
    },
    logSuccess: function(message) {
      logIt(message, 'success');
    },
    logError: function(message) {
      logIt(message, 'error');
    }
  };
};
var module = angular.module("app");
module.factory("notify",notify);
}());
控制器

(function() {
var app = angular.module("app");
var LoginController = function($scope, $interval, $location,ucja,notify) {   
$scope.client = ucja;
$scope.login = function(user,pass){
 notify.log("Heads up! This alert needs your attention, but it's not super important.");
    };   
  };
app.controller("LoginController",['$scope','notify',LoginController]);
}());

感谢fiskers和PSL!是我的无知让我不知道顺序很重要。这实际上最终解决了我所有的问题。我改成

var LoginController = function($scope,notify,ucja)
app.controller("LoginController",['$scope','notify','ucja',LoginController]);

好了!