作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在测试我的 Angular 应用程序时,我收到了弃用警告
'DEPRECATED: DI is instantiating a token "MockLocationStrategy" that inherits its @Injectable decorator but does not provide one itself.This will become an error in a future version of Angular. Please add @Injectable() to the "MockLocationStrategy" class.'
describe('BookComponent', () => {
let component: BookComponent;
let fixture: ComponentFixture<BookIssueComponent>;
beforeEach(waitForAsync(() => {
TestBed.configureTestingModule({
imports: [
RouterTestingModule,
],
declarations: [BookComponent]
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(BookComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});
我相信这个警告是因为我更新了我的包
Package Current Wanted Latest Location
@angular-devkit/architect 0.1102.11 0.1102.13 0.1200.1 node_modules/@angular-devkit/architect
@angular-devkit/build-angular 0.1102.11 0.1102.13 12.0.1 node_modules/@angular-devkit/build-angular
@angular-eslint/builder 4.2.0 4.3.0 12.0.0 node_modules/@angular-eslint/builder
@angular-eslint/eslint-plugin 4.2.0 4.3.0 12.0.0 node_modules/@angular-eslint/eslint-plugin
@angular-eslint/eslint-plugin-template 4.2.0 4.3.0 12.0.0 node_modules/@angular-eslint/eslint-plugin-template
@angular-eslint/schematics 4.2.0 4.3.0 12.0.0 node_modules/@angular-eslint/schematics
@angular-eslint/template-parser 4.2.0 4.3.0 12.0.0 node_modules/@angular-eslint/template-parser
@angular/animations 11.2.12 11.2.14 12.0.1 node_modules/@angular/animations
@angular/cdk 11.2.11 11.2.13 12.0.1 node_modules/@angular/cdk
@angular/cli 11.2.11 11.2.13 12.0.1 node_modules/@angular/cli
@angular/common 11.2.12 11.2.14 12.0.1 node_modules/@angular/common
@angular/compiler 11.2.12 11.2.14 12.0.1 node_modules/@angular/compiler
@angular/compiler-cli 11.2.12 11.2.14 12.0.1 node_modules/@angular/compiler-cli
@angular/core 11.2.12 11.2.14 12.0.1 node_modules/@angular/core
@angular/forms 11.2.12 11.2.14 12.0.1 node_modules/@angular/forms
@angular/language-service 11.2.12 11.2.14 12.0.1 node_modules/@angular/language-service
@angular/platform-browser 11.2.12 11.2.14 12.0.1 node_modules/@angular/platform-browser
@angular/platform-browser-dynamic 11.2.12 11.2.14 12.0.1 node_modules/@angular/platform-browser-dynamic
@angular/pwa 0.1102.11 0.1102.13 12.0.1 node_modules/@angular/pwa
@angular/router 11.2.12 11.2.14 12.0.1 node_modules/@angular/router
@angular/service-worker 11.2.12 11.2.14 12.0.1 node_modules/@angular/service-worker
@ngrx/component 11.1.1 11.1.1 12.0.0 node_modules/@ngrx/component
@ngrx/effects 11.1.1 11.1.1 12.0.0 node_modules/@ngrx/effects
@ngrx/entity 11.1.1 11.1.1 12.0.0 node_modules/@ngrx/entity
@ngrx/schematics 11.1.1 11.1.1 12.0.0 node_modules/@ngrx/schematics
@ngrx/store 11.1.1 11.1.1 12.0.0 node_modules/@ngrx/store
@ngrx/store-devtools 11.1.1 11.1.1 12.0.0 node_modules/@ngrx/store-devtools
@tinymce/tinymce-angular 4.2.2 4.2.3 4.2.3 node_modules/@tinymce/tinymce-angular
@types/jasmine 3.6.10 3.7.4 3.7.4 node_modules/@types/jasmine
@types/jasminewd2 2.0.8 2.0.9 2.0.9 node_modules/@types/jasminewd2
@types/node 15.0.1 15.6.0 15.6.0 node_modules/@types/node
@typescript-eslint/eslint-plugin 4.22.0 4.22.0 4.24.0 node_modules/@typescript-eslint/eslint-plugin
@typescript-eslint/parser 4.22.0 4.22.0 4.24.0 node_modules/@typescript-eslint/parser
bootstrap 4.6.0 4.6.0 5.0.1 node_modules/bootstrap
eslint 7.25.0 7.26.0 7.26.0 node_modules/eslint
eslint-plugin-import 2.22.1 2.22.1 2.23.2 node_modules/eslint-plugin-import
eslint-plugin-jsdoc 33.0.0 33.0.0 34.8.2 node_modules/eslint-plugin-jsdoc
google-libphonenumber 3.2.19 3.2.21 3.2.21 node_modules/google-libphonenumber
ng2-pdf-viewer 6.4.1 6.4.1 7.0.1 node_modules/ng2-pdf-viewer
rxjs 6.6.7 6.6.7 7.1.0 node_modules/rxjs
snyk 1.580.0 1.605.0 1.605.0 node_modules/snyk
tinymce 5.7.1 5.8.1 5.8.1 node_modules/tinymce
typescript 4.1.5 4.1.5 4.2.4 node_modules/typescript
我已尝试关注
docs: RouterTestingModule should be added to Testing guide #34341 的讨论但我不知道如何解决这个问题
最佳答案
使用 withRoutes
提供路线没有为我删除警告。而是提供 MockLocationStrategy
对于 LocationStrategy
对于每个测试导入 RouterTestingModule
为我工作。
import { MockLocationStrategy } from '@angular/common/testing';
import { RouterTestingModule } from '@angular/router/testing';
然后在
TestBed.configureTestingModule
{ provide: LocationStrategy, useClass: MockLocationStrategy },
我在这里找到了答案:
https://github.com/angular/angular/issues/34341#issuecomment-864281500
关于javascript - 已弃用 : DI is instantiating a token "MockLocationStrategy" that inherits its @Injectable decorator but does not provide one itself,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67643040/
我是一名优秀的程序员,十分优秀!