You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Angular集成@angular/localize后单元测试持续报错的问题求助

Angular集成@angular/localize后单元测试持续报错的问题求助

各位大佬好,我最近碰到一个棘手的问题,想请大家帮忙看看:

我原本有一大堆运行正常的单元测试,结果在安装@angular/localize并给HTML标签添加i18n属性之后,所有测试直接全部失败,抛出的错误信息如下:

It looks like your application or one of its dependencies is using i18n.

Angular 9 introduced a global $localize() function that needs to be loaded.

Please run ng add @angular/localize from the Angular CLI.

(For non-CLI projects, add import '@angular/localize/init'; to your polyfills.ts file.

For server-side rendering applications add the import to your main.server.ts file.)

我按照提示操作了,但测试还是失败,下面是我试过的所有方法:

  • 执行npm install @angular/localize和npx nx g @angular/localize:ng-add --project=<project name>(我的项目用的是NX)
  • 在polyfills.ts中添加import '@angular/localize/init';
  • 在polyfills.ts中尝试添加import '../../../node_modules/@angular/localize/init';
  • 在main.ts中同时添加了上面提到的两个import语句
  • 在main.ts中添加/// <reference types="@angular/localize" />
  • 在polyfills.ts、main.ts以及.spec文件中添加了以下代码:
    import { TextEncoder } from 'util';
    global.TextEncoder = TextEncoder;
    

可惜这些方法都没能解决问题。

下面是我当前的依赖版本信息:

PackageVersion
Angular16.2.8
@angular-devkit/architect0.1602.5
@angular-devkit/build-angular16.2.5
@angular-devkit/core16.2.5
@angular-devkit/schematics16.2.5
@angular/cdk16.2.7
@angular/cli16.2.5
@angular/fire7.6.1
@angular/material16.2.7
@schematics/angular16.2.5
rxjs7.8.1
typescript5.1.6
zone.js0.13.3

另外Angular的核心依赖(animations、common、compiler等)都是16.2.8版本。

希望有遇到过类似问题的大佬能给点建议,万分感谢!

备注:内容来源于stack exchange,提问作者Tuma

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.21 11:18:02