$ timeout在全局服务中失败

时间:2013-12-29 16:25:43

标签: angularjs

请参阅http://plnkr.co/edit/FiTKFHV9f1P1N8NgcC5K以获取示例。错误是

TypeError:number不是函数     at Object。$ rootScope.alerts.push.timeout

不包含超时的类似关闭函数不会失败。

2 个答案:

答案 0 :(得分:1)

本地变量$timeout隐藏了$timeout模块。

更改

add: function (type, msg, duration, $timeout)

add: function (type, msg, duration)

答案 1 :(得分:0)

我认为您在timeout的{​​{1}}声明中拼错了变量名称。

您在alertService函数中将$index作为$timeout变量传递,因此alert.timeout实际上并非来自angularjs的$timeout服务,而是一个数字(在迭代中传递了元素的索引。)