【发布时间】:2014-09-08 16:16:31
【问题描述】:
考虑以下情况:Web 应用程序的每个页面上有多个(手动引导的)AngularJS 应用程序。需要将 Web 分析跟踪(在本例中为 Adobe Omniture/SiteCatalyst)添加到每个应用程序中。但是,我希望将分析代码与 AngularJS 应用程序的其余部分完全分开 - 能够立即将其删除。
解决此问题的最佳方法是什么?我考虑了以下几点:
- 编写 JQuery 代码来询问 DOM 并提交 SiteCatalyst 调用(可以,但不是很 AngularJS-ey)
- 找到一些方法来扩展 AngularJS 控制器并使用额外的分析代码包装方法。这可能还涉及为范围变量添加 $watch 代码。
- 其他一些拦截 AngularJS 事件的方法,类似于 HTTP 拦截器。
【问题讨论】:
标签: angularjs separation-of-concerns web-analytics adobe-analytics