Angular项目指定@angular-eslint扩展包安装失败,求替代方案
问题解答
你提到的@angular-eslint/ng-cli-compat、@angular-eslint/ng-cli-compat--formatting-add-on以及@angular-eslint/template/process-inline-templates这几个包确实已被废弃,不再发布到npm仓库,因此安装时会触发404错误。
原因说明
@angular-eslint在v12及后续版本中完成了包结构重构,将旧版本中拆分的兼容类、模板处理类包全部整合进了核心套件,不再单独维护这些细分包。你参考的博客针对的是Angular 11版本,对应的@angular-eslint版本已过时。
替代方案
1. 安装最新的@angular-eslint核心依赖
执行以下命令安装当前维护的官方包:
npm install --save-dev @angular-eslint/eslint-plugin @angular-eslint/eslint-plugin-template @angular-eslint/template-parser @angular-eslint/utils
如果你的Angular版本较新(v14+),推荐直接使用Angular CLI的schematics自动完成配置,命令如下:
ng add @angular-eslint/schematics
这个命令会自动安装所有必要依赖,并生成符合当前版本规范的.eslintrc.json配置文件。
2. 更新.eslintrc.json配置
手动配置的话,替换原有overrides中的TS文件配置为以下内容:
// ... "overrides": [ { "files": ["*.ts"], "parserOptions": { "project": ["tsconfig.json"] }, "extends": [ "plugin:@angular-eslint/recommended", "plugin:@angular-eslint/recommended-type-checking" ], "rules": { // 根据需求添加自定义规则 } }, { "files": ["*.html"], "extends": ["plugin:@angular-eslint/template/recommended"], "rules": { // 自定义模板规则 } } ] // ...
注意事项
- 原有的
process-inline-templates功能已整合进核心逻辑,只要正确配置TS文件的parserOptions.project,@angular-eslint会自动处理组件内的内联模板。 recommended-type-checking扩展包含需要TypeScript类型信息的规则,如果不需要严格的类型检查,可以只使用plugin:@angular-eslint/recommended。
内容的提问来源于stack exchange,提问作者kellermat
相关产品推荐
相关产品推荐

