After updating, my previously passing unit tests now fail with the error: 'TypeError: this._renderer.addClass is not a function' across multiple tests, despite not using or importing the renderer in the component itself. Any insights into this error?
TypeError: this._renderer.addClass is not a function
at forEach (node_modules/@angular/common/fesm2022/common.mjs:2729:36)
at Array.forEach (<anonymous>)
at NgClass._toggleClass (node_modules/@angular/common/fesm2022/common.mjs:2727:36)
at NgClass._applyStateDiff (node_modules/@angular/common/fesm2022/common.mjs:2705:22)
at NgClass.ngDoCheck (node_modules/@angular/common/fesm2022/common.mjs:2685:14)
at DefaultClassDirective.call [as ngDoCheck] (node_modules/@angular/flex-layout/fesm2020/angular-flex-layout-extended.mjs:151:30)
at callHookInternal (node_modules/@angular/core/fesm2022/core.mjs:3607:14)
at callHook (node_modules/@angular/core/fesm2022/core.mjs:3638:9)
at callHooks (node_modules/@angular/core/fesm2022/core.mjs:3589:17)
at executeInitAndCheckHooks (node_modules/@angular/core/fesm2022/core.mjs:3539:9)
Chrome Headless 121.0.6167.184 (Windows 10): Executed 8 of 230 (1 FAILED) (0 secs / 0.852 secs)
"devDependencies": {
"@angular-devkit/build-angular": "^17.1.3",
"@angular/compiler-cli": "17.1.3",
"@angular/language-service": "^17.1.3",
"@ngrx/store-devtools": "^17.1.0",
"@types/jasmine": "^5.1.1",
"@types/jasminewd2": "^2.0.12",
"@types/node": "^20.11.17",
"codelyzer": "^0.0.28",
"eslint": "^8.56.0",
"jasmine-core": "~5.1.2",
"jasmine-spec-reporter": "~7.0.0",
"karma": "^6.4.2",
"karma-chrome-launcher": "^3.2.0",
"karma-coverage": "^2.2.1",
"karma-coverage-istanbul-reporter": "~3.0.3",
"karma-jasmine": "^5.1.0",
"karma-jasmine-html-reporter": "^2.0.0",
"ts-node": "~10.9.2",
"typescript": "~5.3.3"
}
I've identified the source of the issue: it's the block containing [ngClass.lg]="'mrg-rt-10'". When I remove this block, everything works fine. Any insights on this?
<span *ngIf="eventForm.get('all_day').value === false" fxFlex="50%" fxFlex.xs="100%" [ngClass.lg]="'mrg-rt-10'"> </span>
My solution is to just individuall do [class.Name]=""
So instead of [ngClass]="{'some-class': true}" you can can the syntax to by [class.some-class]="true" and that fixed my issue. I ran into this article as well about CommonModule missing for standalone components but it did not help me, just simply changing the syntax fixed it for me.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With