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

Angular项目执行npm start报错:process.nextTick读取indexOf属性失败

Angular项目npm start构建报错排查方案

错误核心信息

执行npm start时触发以下错误:

> del-proj@0.0.0 build
> ng build

Node.js version v21.0.0 detected.
Odd numbered Node.js versions will not enter LTS status and should not be used for production.
⠼ Generating browser application bundles (phase: building)...
node:internal/event_target:1084
  process.nextTick(() => { throw err; });
                           ^
TypeError [Error]: Cannot read properties of undefined (reading 'indexOf')
    at /home/user_name/project_path/node_modules/@angular-devkit/build-angular/node_modules/sass/sass.dart.js:104395:12

项目依赖版本:

"dependencies": {
    "@angular/animations": "^16.2.0",
    "@angular/common": "^16.2.0",
    "@angular/compiler": "^16.2.0",
    "@angular/core": "^16.2.0",
    "@angular/forms": "^16.2.0",
    "@angular/platform-browser": "^16.2.0",
    "@angular/platform-browser-dynamic": "^16.2.0",
    "@angular/router": "^16.2.0",
    "rxjs": "~7.8.0",
    "tslib": "^2.3.0",
    "zone.js": "~0.13.0"
  },
  "devDependencies": {
    "@angular-devkit/build-angular": "~16.2.6",
    "@angular/cli": "^16.2.6",
    "@angular/compiler-cli": "^16.2.0",
    "@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",
    "sass": "^1.69.4",
    "typescript": "~5.1.3"
  }

排查与解决步骤

1. 切换兼容的Node.js版本

Angular 16官方仅支持Node.js 16.14.0+ 或 18.x LTS版本,v21.0.0是非LTS的开发版本,存在严重兼容性问题,这是触发错误的主要原因:

  • 用nvm切换到18.x LTS:
    nvm install 18
    nvm use 18
    
  • 清理缓存并重装依赖:
    rm -rf node_modules package-lock.json
    npm install
    
  • 重新运行npm start测试

2. 修复sass版本冲突

错误栈指向构建工具内置的sass文件,项目安装的sass@1.69.4可能与@angular-devkit/build-angular依赖的sass版本不兼容:

  • 修改package.json中的sass版本为Angular 16兼容的稳定版:
    "sass": "~1.68.0"
    
  • 清理并重装依赖:
    rm -rf node_modules package-lock.json
    npm install
    npm start
    

3. 确保CLI与构建工具版本完全匹配

强制同步@angular/cli和@angular-devkit/build-angular版本,避免潜在的版本差异问题:

  • 执行以下命令更新依赖:
    npm install @angular/cli@16.2.6 @angular-devkit/build-angular@16.2.6 --save-dev
    
  • 再次尝试构建项目

内容的提问来源于stack exchange,提问作者Leandro Cadete

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.08 01:30:39