Ошибка npm - не удается найти модуль './selenium-webdriver/lib/input' - PullRequest
0 голосов
/ 28 марта 2019

После того, как я обновил версию своего проекта Angular с 5 до 7, у меня появилось много уязвимостей, чтобы их исправить - я выполнил все команды, которые были предложены в «аудите npm», и все уязвимости были исправлены.

Но теперь, когда я бегу:

ng serve

Я получаю эту ошибку:

ОШИБКА в node_modules / protractor / built / ptor.d.ts (33,17): ошибка TS2307: Не удается найти модуль './selenium-webdriver/lib/input'.

Редактировать

Если я попадаю в источники ошибок, я вижу строку проблемы:

// node_modules/protractor/built/ptor.d.ts
 Key: import("./selenium-webdriver/lib/input").IKey;

и если я изменю строку на:

 Key: import("../../selenium-webdriver/lib/input").IKey;

это исправило ошибку.

Полагаю, это проблема версий, но теперь осталось выяснить, какие версии правильные.

Это мой файл package.json:

{
"name": "test",
 "version": "1.0.0",
"license": "MIT",
"scripts": {
"ng": "ng",
"start": "ng serve",
"build": "ng build --prod",
"test": "ng test",
"lint": "ng lint",
"e2e": "ng e2e"
},
"private": true,
"dependencies": {
"@angular-devkit/core": "7.3.6",
"@angular/animations": "7.2.11",
"@angular/common": "7.2.11",
"@angular/compiler": "7.2.11",
"@angular/core": "7.2.11",
"@angular/forms": "7.2.11",
"@angular/http": "7.2.11",
"@angular/platform-browser": "7.2.11",
"@angular/platform-browser-dynamic": "7.2.11",
"@angular/router": "7.2.11",    
"core-js": "^2.4.1",
"rxjs": "^6.4.0",
"selenium-webdriver": "^4.0.0-alpha.1",
"tslib": "^1.9.0",
"zone.js": "^0.8.29"
},
"devDependencies": {
"@angular-devkit/build-angular": "^0.13.7",
"@angular/cli": "7.3.6",
"@angular/compiler-cli": "7.2.11",
"@angular/language-service": "7.2.11",
"@types/jasmine": "~2.5.53",
"@types/jasminewd2": "~2.0.2",
"@types/node": "~6.0.60",
"codelyzer": "^4.0.1",
"jasmine-core": "~2.6.2",
"jasmine-spec-reporter": "~4.1.0",
"karma": "^4.0.1",
"karma-chrome-launcher": "~2.1.1",
"karma-cli": "~1.0.1",
"karma-coverage-istanbul-reporter": "^1.2.1",
"karma-jasmine": "~1.1.0",
"karma-jasmine-html-reporter": "^0.2.2",
"protractor": "^6.0.0",
"ts-node": "~3.2.0",
"tslint": "~5.7.0",
"typescript": "3.2.4"
 },
"description": "This project was generated with [Angular CLI] 
(https://github.com/angular/angular-cli) version 1.6.3.",
"main": "/",
"repository": {
"type": "git",
"url": "/"
 },
"keywords": [
"/"
],
"author": "/"
}

Есть идеи почему?

Ответы [ 3 ]

0 голосов
/ 28 марта 2019

Можете ли вы попробовать эти две команды в терминале, чтобы убедиться, что все пакеты установлены:

npm i selenium-webdriver --save и npm i

, что также совпадает с

npm install selenium-webdriver --save и npm install

0 голосов
/ 28 марта 2019
  1. Резервное копирование кода, включая папку node_modules
  2. Удаление папки node_modules и файла package-lock.json
  3. Выполните следующую команду в корневой папке приложения

    npm i
    
    ng serve
    
0 голосов
/ 28 марта 2019

Похоже, проблема в пакете с @types:

https://github.com/angular/protractor/issues/5192

Возможно, попробуйте использовать предыдущую версию, например: @ types / selenium-webdriver @ 2.53.33

...