angularjs - 如何模拟 angular.element.injector().get;
问题描述
我在 angularjs 文件中有这样的控制器代码...
function sendAnalytics(searchParams) {
var analyticServiceCall = angular.element(document.body).injector().get('SomeElement');
};
当我运行带有上述控制器的测试用例时,出现以下错误
* TypeError: Cannot call method "get" of undefined in http://localhost:46309/src/soemFolder/someController.js (line XYZ)
我的理解是,我需要模拟 angular.element(document.body).injector().get 函数但是怎么做呢?
解决方案
beforeEach(inject(function($injector) {
angular.element.fn.extend({ injector: function() { return $injector } });
});
你可以在这里找到更多信息
推荐阅读
- ios - 制作自定义形状按钮 - Swift
- python-3.6 - Apache Airflow + Python 3.6 + Local Executor + Mysql 作为元数据库
- android - GridView 使我的应用程序崩溃 - 如何解决?
- xamarin - 更改加速度会在 Movesense for Xamarin 上提供 BAD_REQUEST
- xamarin - 使用 FlexLayout 换行,如何在行之间留出空间?
- python - 合并两个数据框的列而不重复行
- emacs - 共享一个 emacs 会话,每个程序员都使用自己的键绑定
- sass - Gulp 任务未编译 SASS
- ios - 错误域=NSCocoaErrorDomain 代码=3840 解析 Swift 4.2
- python - 根据多列条件选择熊猫数据框中的行