angularjs - 类型 'mock' 上不存在属性 'IAngularStatic'

标签 angularjs jasmine mocking karma-runner

我想使用模拟来创建一个新类,但我不知道为什么这个模拟在“IAngularStatic”类型上不存在。以下是我的代码。

import {} from 'jasmine';
import * as angular from 'angular';
import {StrategyTables} from "./strategyTables.component";
import {StrategyTablesService} from "./strategyTables.service";
import {Router} from "@angular/router";
import {Location } from '@angular/common';
import {inject,async,TestBed} from '@angular/core/testing';
describe('strategyTables.component',() => {

  class MockstrategyService extends StrategyTablesService{
    getContactById(id:number){
      return{
        "name": "lee"
      };
    }

  }
  beforeEach(() => {
    angular.mock.module(($provide) => {
      TestBed.configureTestingModule({
        providers: [
          $provide.value(StrategyTablesService, { useClass:MockstrategyService })
      ]
    });
    });
  });

最佳答案

您可能忘记安装 Angular 模拟 (@types/Angular-Mocks) 的类型,该模拟位于 AngularJS 项目之外的另一个项目 (@types/Angular) 中.

npm install --save-dev @types/angular-mocks

关于angularjs - 类型 'mock' 上不存在属性 'IAngularStatic',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43859590/

相关文章:

ruby-on-rails-3 - 你如何在 Rails 3 上使用 RR(双 ruby )模拟一个带有 block 的方法

javascript - 如何在 Angular JS 中重置文件上传控件

unit-testing - VS-Code 错误的单元测试类型(Mocha&Chai 而不是 Jasmine)

python - 检查 unittest.mock 调用参数不可知 w.r.t.它们是作为位置参数还是关键字参数传递

javascript - 在 jasmine angular2 测试中获取 span 标签的值

angularjs - 当我们使用 E2E 测试在下拉 Protractor 中有多个包含相同文本的选项时,如何选择任何特定选项

.net - 我怎样才能模拟大会?

javascript - 在两个 View 中使用 Angular JS 的 Ionic 应用程序的动态列表

angularjs - ng-include 在 Plunker 中不起作用

javascript - AngularJS 异步指令编译