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

ESLint误报$localize为Any类型错误,仅本地复现求助

解决ESLint标记$localize为any类型的错误

针对你遇到的ESLint抛出Unsafe assignment of an 'any' value和Unsafe any typed template tag错误,且仅个人设备反复出现的问题,可尝试以下方案:

  • 确保@angular/localize类型依赖正确配置
    $localize是Angular官方提供的国际化工具,需确保其包及类型定义被正确识别:

    1. 执行安装命令:npm install @angular/localize --save 或 yarn add @angular/localize
    2. 在项目根目录的tsconfig.json中,将@angular/localize添加到types数组:
      {
        "compilerOptions": {
          "types": ["@angular/localize"]
        }
      }
      
  • 修复ESLint的类型解析配置
    ESLint需读取TypeScript的类型信息才能识别$localize的正确类型:

    1. 在.eslintrc.json中确保@typescript-eslint/parser的project字段正确指向项目的tsconfig.json:
      "parser": "@typescript-eslint/parser",
      "parserOptions": {
        "project": "./tsconfig.json",
        "sourceType": "module"
      }
      
    2. 清除ESLint缓存:通过VS Code命令面板(Ctrl+Shift+P)执行ESLint: Restart ESLint Server,或手动删除node_modules/.cache/eslint目录。
  • 针对性禁用相关ESLint规则(临时方案)
    若上述方法无效,可直接对$localize豁免相关规则检查:
    在.eslintrc.json的rules字段中添加:

    "@typescript-eslint/no-unsafe-assignment": ["error", {
      "allow": ["$localize"]
    }],
    "@typescript-eslint/no-unsafe-template-tag": ["error", {
      "allow": ["$localize"]
    }]
    
  • 统一本地环境依赖版本
    个人设备与团队环境的依赖版本差异可能导致问题:

    1. 对比本地与同事的全局Node、TypeScript、ESLint版本,使用nvm管理Node版本,确保环境一致
    2. 删除本地node_modules和package-lock.json/yarn.lock,重新执行npm install或yarn install同步依赖
  • 清理VS Code工作区缓存
    删除项目根目录的.vscode文件夹(备份后操作),重新打开项目,让VS Code重新生成工作区配置。

内容的提问来源于stack exchange,提问作者Jesper Pannerup

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 13:46:04