Проблема миграции Angular 9 объявить переменную глобальной: NodeJS.Global

#angular

#angular

Вопрос:

Поскольку я перенес Angular 8 на Angular 9, но как только миграция завершена, я получил эту ошибку, которую я перепробовал на некоторых онлайн-ресурсах, но не смог ее решить. См. Приведенный Ниже экран для ошибки:

введите описание изображения здесь

Это мой package.json

 {
  "name": "material",
  "private": true,
  "version": "3.0.0",
  "main": "",
  "scripts": {
    "clean": "rimraf node_modules",
    "clean-all": "rimraf node_modules dist dll amp;amp; npm cache clean",
    "init": "npm install",
    "reinstall": "rimraf node_modules amp;amp; rm -f package-lock.json amp;amp; npm install",
    "lint": "ng lint",
    "lint-fix": "npm run tslint "src/**/*.ts --fix"",
    "ng": "ng",
    "start": "ng serve --proxy-config proxy.config.json",
    "hmr": "ng serve --hmr -e=hmr",
    "build": "ng build",
    "test": "ng test",
    "e2e": "ng e2e"
  },
  "dependencies": {
    "@angular/animations": "^9.1.12",
    "@angular/cdk": "8.0.1",
    "@angular/common": "^9.1.12",
    "@angular/compiler": "^9.1.12",
    "@angular/core": "^9.1.12",
    "@angular/forms": "^9.1.12",
    "@angular/http": "7.0.3",
    "@angular/material": "8.0.1",
    "@angular/platform-browser": "^9.1.12",
    "@angular/platform-browser-dynamic": "^9.1.12",
    "@angular/platform-server": "9.1.12",
    "@angular/router": "^9.1.12",
    "@types/eventsource": "^1.0.2",
    "angular-animate": "^1.7.8",
    "angular-shepherd": "^0.3.0",
    "chart.js": "^2.7.2",
    "chartjs-plugin-datalabels": "^0.4.0",
    "chartjs-plugin-labels": "^1.0.1",
    "core-js": "^2.5.1",
    "download-csv": "^1.1.1",
    "echarts": "^3.8.5",
    "exceljs": "^4.0.1",
    "express": "^4.17.1",
    "file-saver": "^2.0.2",
    "font-awesome": "^4.7.0",
    "hammerjs": "^2.0.8",
    "jquery": "^3.4.1",
    "jquery-slimscroll": "^1.3.8",
    "moment": "^2.24.0",
    "ng-event-source": "^1.0.14",
    "ng2-ace-editor": "^0.3.9",
    "ng2-charts": "^1.6.0",
    "ng2-odometer": "^1.1.3",
    "ng2-search-filter": "^0.5.1",
    "ngx-shimmer-loading": "0.0.5",
    "panzoom": "^9.2.5",
    "postcss": "^7.0.5",
    "reflect-metadata": "^0.1.10",
    "rxjs": "^6.6.3",
    "rxjs-compat": "^6.3.3",
    "time-ago-pipe": "^1.3.2",
    "tslib": "^1.10.0",
    "web-animations-js": "^2.3.2",
    "webfontloader": "^1.6.28",
    "xlsx": "^0.14.2",
    "zone.js": "~0.10.2"
  },
  "devDependencies": {
    "@angular-devkit/build-angular": "~0.901.12",
    "@angular/cli": "^9.1.12",
    "@angular/compiler-cli": "^9.1.12",
    "@angularclass/hmr": "^2.1.3",
    "@angularclass/hmr-loader": "^3.0.4",
    "@types/core-js": "^0.9.42",
    "@types/hammerjs": "^2.0.34",
    "@types/jasmine": "^2.8.1",
    "@types/jquery": "^3.3.6",
    "@types/node": "^14.0.4",
    "add-asset-html-webpack-plugin": "^2.1.2",
    "angular-router-loader": "^0.7.0",
    "angular2-template-loader": "^0.6.2",
    "autoprefixer": "^7.1.6",
    "bootstrap": "^4.3.1",
    "codelyzer": "^5.1.2",
    "copy-webpack-plugin": "^4.2.0",
    "css-loader": "^0.28.7",
    "extract-text-webpack-plugin": "^3.0.2",
    "file-loader": "^1.1.5",
    "html-webpack-plugin": "^2.29.0",
    "json-loader": "^0.5.4",
    "material-design-lite": "^1.3.0",
    "ng-router-loader": "^2.1.0",
    "node-sass": "^4.13.1",
    "postcss-loader": "^2.0.8",
    "raw-loader": "^0.5.1",
    "rimraf": "^2.6.2",
    "sass-loader": "^6.0.6",
    "style-loader": "^0.19.0",
    "ts-helpers": "^1.1.2",
    "ts-node": "^3.2.1",
    "tslint": "^5.8.0",
    "tslint-loader": "^3.5.3",
    "typescript": "3.8.3",
    "webpack": "^4.21.0",
    "webpack-dev-server": "~2.9.4",
    "webpack-dll-bundles-plugin": "^1.0.0-beta.5",
    "webpack-merge": "^4.1.1"
  },
  "engines": {
    "node": ">=6.9.0",
    "npm": ">= 3"
  }
}
 

Моя локальная версия angular:

введите описание изображения здесь

Пожалуйста, кто-нибудь может помочь в этом, поскольку я сталкивался с этой проблемой уже много дней.

После поиска в Google я нашел какую-то ссылку, и в ней говорится, что нужно выполнить следующую команду:

 npm ls @types/node
 

После выполнения этой команды я получил следующий результат. Чего я не понимаю.

введите описание изображения здесь Спасибо.

Комментарии:

1. ваша версия «webpack-dev-server» — «~ 2.9.4» … попробуйте обновить ее до «3.1.4» и сделайте еще один шаг.

2. @John Spiteri; Я изменился, но все еще получаю ту же проблему.

3. var global: Global; (глобальный — это интерфейс в Typescript), это первая проблема, и, похоже, тогда она противоречит «zone.js » используя те же значения. Я думаю, что вы используете NPM версии 6, которая не устанавливает одноранговые зависимости… если вы сможете обновить NPM до версии 7, он установит одноранговые зависимости и упростит поиск того, что требуется.