我正在尝试创建自定义过滤器来跟踪事件。因此过滤器可以调用segmentio服务上的方法。
angular.module('sageApp')
.filter('trackEvent', function(segmentio) {
return function(entry, category) {
segmentio.track(entry, category);
}
});
但segmentio服务不可用。关于如何依赖注入服务到过滤器的任何想法都会非常感激。
答案 0 :(得分:46)
尝试:
app.filter('sageApp', ['segmentio', function(segmentio) {
return function(entry, category) {
segmentio.track(entry, category);
}
}]);
答案 1 :(得分:3)
该服务经过测试并正常运行。实际上我发现了我的问题,当使用angular时,有时chrome dev工具在调试器进行检查时不会在闭包中显示变量。当我做console.log(segmentio)时,它运行良好。