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

Angular 16项目启动报错:@angular/compiler无TmplAstBoundDeferredTrigger导出

Angular项目启动报错:@angular/compiler 未导出TmplAstBoundDeferredTrigger

问题详情

项目为Angular 16.1.0版本,原本运行正常,重启VS Code后执行ng serve时触发报错。已尝试删除node_modules、清理缓存并重新安装依赖,问题未解决。

报错信息

The requested module '@angular/compiler' does not provide an export named 'TmplAstBoundDeferredTrigger'

项目package.json内容

{
  "name": "oz-main-site",
  "version": "0.0.0",
  "scripts": {
    "ng": "ng",
    "start": "ng serve",
    "build": "ng build",
    "watch": "ng build --watch --configuration development",
    "test": "ng test"
  },
  "private": true,
  "dependencies": {
    "@angular/animations": "^16.1.0",
    "@angular/common": "^16.1.0",
    "@angular/compiler": "^16.1.0",
    "@angular/core": "^16.1.0",
    "@angular/forms": "^16.1.0",
    "@angular/localize": "^16.2.12",
    "@angular/material": "^16.0.2",
    "@angular/platform-browser": "^16.1.0",
    "@angular/platform-browser-dynamic": "^16.1.0",
    "@angular/router": "^16.1.0",
    "@ng-bootstrap/ng-bootstrap": "^15.1.2",
    "bootstrap": "^5.3.0",
    "bootstrap-icons": "^1.10.5",
    "hammerjs": "^2.0.8",
    "jquery": "^3.7.1",
    "ngx-owl-carousel-o": "^16.0.0",
    "remixicon": "^3.5.0",
    "rxjs": "~7.8.0",
    "swiper": "^8.4.7",
    "tslib": "^2.3.0",
    "zone.js": "~0.13.0"
  },
  "devDependencies": {
    "@angular-devkit/build-angular": "^16.1.0",
    "@angular/cli": "~16.1.0",
    "@angular/compiler-cli": "^16.1.0",
    "@types/hammerjs": "^2.0.45",
    "@types/jasmine": "~4.3.0",
    "jasmine-core": "~4.6.0",
    "karma": "~6.4.0",
    "karma-chrome-launcher": "~3.2.0",
    "karma-coverage": "~2.2.0",
    "karma-jasmine": "~5.1.0",
    "karma-jasmine-html-reporter": "~2.1.0",
    "typescript": "~5.1.3"
  }
}

ng version输出

Angular CLI: 14.2.6
Node: 16.14.2
Package Manager: npm 8.5.0
OS: win32 x64

Angular: undefined
... 

Package                      Version
------------------------------------------------------
@angular-devkit/architect    0.1402.6
@angular-devkit/core         14.2.6
@angular-devkit/schematics   14.2.6
@schematics/angular          14.2.6

解决方案

核心原因

全局安装的Angular CLI版本(14.2.6)与项目依赖的Angular版本(16.1.0)不匹配。TmplAstBoundDeferredTrigger是Angular 16新增的编译器API,旧版本CLI无法识别该导出项,导致启动失败。

修复步骤

  1. 卸载全局旧版本Angular CLI:
    npm uninstall -g @angular/cli
    
  2. 强制清理npm缓存:
    npm cache clean --force
    
  3. 安装与项目匹配的16.1.0版本CLI:
    npm install -g @angular/cli@16.1.0
    
  4. 进入项目目录,删除现有依赖文件并重新安装:
    rm -rf node_modules package-lock.json
    npm install
    
  5. 重新启动项目:
    ng serve
    

额外检查

  • 确认VS Code终端使用的Node环境版本符合要求(Angular 16支持Node 16.14+、18.x或20.x,当前Node 16.14.2满足条件)。
  • 若使用nvm等版本管理工具,确保已切换到项目对应的Node版本。

内容的提问来源于stack exchange,提问作者Asmaa Rashad

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.03 03:05:30