WebStorm中Angular13 async pipe报Missing require() statement错误如何解决
WebStorm 2021.2.3 适配 Angular 13 标红报错解决方案
该问题本质是 WebStorm 2021.2.3 版本的内置 Angular 插件未适配 Angular 13 移除 View Engine、全量切换 Ivy 编译的相关变更,无法识别 Ivy 模式下导出的指令、管道类型,因此出现语法标红,但项目本身编译运行不受影响。可按以下优先级选择解决方案:
方案1:升级 WebStorm 到兼容版本(优先推荐)
WebStorm 2021.3 及以上版本官方已完成 Angular 13 的全量适配,升级IDE到2021.3或更高版本后,重启即可自动识别Angular 13的管道、指令,报错直接消失。
方案2:临时适配方案(暂无法升级IDE时使用)
- 清空IDE缓存并重建索引:打开顶部菜单栏
File -> Invalidate Caches,勾选 Clear file system cache and local history 后点击Invalidate and Restart,等待IDE重启完成全量索引后验证问题是否解决。 - 调整Angular插件配置:打开设置(Mac路径
WebStorm -> Preferences,Windows/Linux路径File -> Settings),找到Languages & Frameworks -> TypeScript -> Angular,取消勾选 Enable strict template type checking,同时确认 Angular language service 处于开启状态,保存后重启IDE。 - 降级项目Angular语言服务版本:在项目根目录执行命令
npm i @angular/language-service@12.x --save-dev,安装12.x版本的语言服务包,重启IDE后即可兼容旧版插件的识别逻辑。
如果以上临时方案均无效,建议优先升级IDE版本,从根源解决兼容问题。
内容的提问来源于stack exchange,提问作者Mihai Marinescu
相关产品推荐
相关产品推荐

