Не удалось обновить Angular 2 до Angular 4

Я обновил с углового 2 до углового 4, и теперь я получаю ошибку. Я скопировал текст из этого т.е.

npm install @angular/common@latest @angular/compiler@latest @angular/compiler-cli@latest @angular/core@latest @angular/forms@latest @angular/http@latest @angular/platform-browser@latest @angular/platform-browser-dynamic@latest @angular/platform-server@latest @angular/router@latest @angular/animations@latest typescript@latest --save

Теперь я получаю эту ошибку при запуске npm start. Пожалуйста, помогите

`

product-management@1.0.0 start C: \ Users \ dp9 \ Documents \ Visual Studio 2015 \ Проекты \ NG \ NG UI

tsc && одновременно "tsc -w" "lite-сервер"

node_modules/@types/node/index.d.ts (70,5): ошибка TS2403: последующие объявления переменных должны иметь одинаковый тип. Переменная 'main' должна иметь тип 'any', но здесь имеет тип 'NodeModule'.

node_modules/@types/node/index.d.ts (81,5): ошибка TS2403: последующие объявления переменных должны иметь одинаковый тип. Переменная 'parent' должна иметь тип 'any', но здесь имеет тип 'NodeModule'.

node_modules/@types/node/index.d.ts (82,5): ошибка TS2403: последующие объявления переменных должны иметь одинаковый тип. Переменная 'children' должна иметь тип 'any[]', но здесь имеет тип 'NodeModule []'.

node_modules/@types/node/index.d.ts (102,6): ошибка TS2300: дубликат идентификатора 'BufferEncoding'.

node_modules/@types/node/index.d.ts (263,18): ошибка TS2300: дубликат идентификатора EventEmitter.

node_modules/@types/node/index.d.ts (371,9): ошибка TS2403: последующие объявления переменных должны иметь одинаковый тип. Переменная "stdout" должна иметь тип "WritableStream", но здесь имеет тип "WriteStream".

node_modules/@types/node/index.d.ts (372,9): ошибка TS2403: последующие объявления переменных должны иметь одинаковый тип. Переменная "stderr" должна иметь тип "WritableStream", но здесь имеет тип "WriteStream".

node_modules/@types/node/index.d.ts (373,9): ошибка TS2403: последующие объявления переменных должны иметь одинаковый тип. Переменная "stdin" должна иметь тип "ReadableStream", но здесь имеет тип "ReadStream".

node_modules/@types/node/index.d.ts (422,9): ошибка TS2403: последующие объявления переменных должны иметь одинаковый тип. Переменная "платформа" должна иметь тип "строка", но здесь имеет тип "Платформа".

node_modules/@types/node/index.d.ts (580,26): ошибка TS2300: дубликат идентификатора "Буфер".

node_modules/@types/node/index.d.ts (580,50): ошибка TS2300: дубликат идентификатора 'SlowBuffer'.

node_modules/@types/node/index.d.ts (604,22): ошибка TS2415: класс 'EventEmitter' неправильно расширяет базовый класс 'internal'. Типы свойств 'eventNames' несовместимы. Тип '() => (строка | символ)[]' нельзя назначить типу () => строка [] '. Тип '(string | symbol)[]' нельзя назначить типу 'string[]'.

node_modules/@types/node/index.d.ts (624,5): ошибка TS2309: Невозможно использовать назначение экспорта в модуле с другими экспортируемыми элементами.

node_modules/@types/node/index.d.ts (769,18): ошибка TS2300: повторяющийся идентификатор "Агент".

node_modules/@types/node/index.d.ts (824,9): ошибка TS2403: последующие объявления переменных должны иметь одинаковый тип. Переменная 'addressType' должна иметь тип 'string', но здесь имеет тип 'number | "udp4" | "Udp6".

node_modules/@types/node/index.d.ts (827,18): ошибка TS2300: дубликат идентификатора "Рабочий".

node_modules/@types/node/index.d.ts (1510,17): ошибка TS2300: дубликат идентификатора 'CompleterResult'.

node_modules/@types/node/index.d.ts (1547,18): ошибка TS2300: дубликат идентификатора "Скрипт".

node_modules/@types/node/index.d.ts (2911,18): ошибка TS2300: дубликат идентификатора 'TLSSocket'.

node_modules/@types/node/index.d.ts (3108,9): ошибка TS2403: последующие объявления переменных должны иметь одинаковый тип. Переменная 'pfx' должна иметь тип 'any', но здесь имеет тип 'string | Buffer[].

node_modules/@types/node/index.d.ts (3109,9): ошибка TS2403: последующие объявления переменных должны иметь одинаковый тип. Переменная 'key' должна иметь тип 'any', но здесь имеет тип 'string | любой [] | строка [] | Буфер".

node_modules/@types/node/index.d.ts (3111,9): ошибка TS2403: последующие объявления переменных должны иметь одинаковый тип. Переменная 'cert' должна иметь тип 'any', но здесь имеет тип 'string | строка [] | Буфер | Buffer [].

node_modules/@types/node/index.d.ts (3112,9): ошибка TS2403: последующие объявления переменных должны иметь одинаковый тип. Переменная 'ca' должна иметь тип 'any', но здесь имеет тип 'string | строка [] | Буфер | Buffer [].

node_modules/@types/node/index.d.ts (3113,9): ошибка TS2403: последующие объявления переменных должны иметь одинаковый тип. Переменная 'crl' должна иметь тип 'any', но здесь имеет тип 'string | Строка [].

node_modules/@types/node/index.d.ts (3115,9): ошибка TS2403: последующие объявления переменных должны иметь одинаковый тип. Переменная honorCipherOrder должна иметь тип any, но здесь имеет тип boolean.

node_modules/@types/node/index.d.ts (3118,9): ошибка TS2403: последующие объявления переменных должны иметь одинаковый тип. Переменная 'NPNProtocols' должна иметь тип 'any', но здесь имеет тип 'string[] | Буфер".

node_modules/@types/node/index.d.ts (3135,9): ошибка TS2403: последующие объявления переменных должны иметь одинаковый тип. Переменная 'ключ' должна иметь тип 'строка | Buffer', но здесь есть тип' string | строка [] | Буфер | Buffer [].

node_modules/@types/node/index.d.ts (3137,9): ошибка TS2403: последующие объявления переменных должны иметь одинаковый тип. Переменная 'cert' должна иметь тип 'string | Buffer', но здесь есть тип' string | строка [] | Буфер | Buffer [].

node_modules/@types/node/index.d.ts (3138,9): ошибка TS2403: последующие объявления переменных должны иметь одинаковый тип. Переменная 'ca' должна иметь тип '(string | Buffer)[]', но здесь есть тип 'string | Буфер | (строка | Буфер) [] '.

node_modules/@types/node/index.d.ts (3377,9): ошибка TS2403: последующие объявления переменных должны иметь одинаковый тип. Переменная 'padding' должна иметь тип 'any', но здесь имеет тип 'number'.

node_modules/@types/node/index.d.ts (3382,9): ошибка TS2403: последующие объявления переменных должны иметь одинаковый тип. Переменная 'padding' должна иметь тип 'any', но здесь имеет тип 'number'.

node_modules/@types/node/index.d.ts (3429,22): ошибка TS2420: класс "Readable" неправильно реализует интерфейс "ReadableStream". Типы свойств "пауза" несовместимы. Тип '() => Readable' не может быть назначен типу {{): ReadableStream; (): ReadableStream; }". Тип "Readable" не может быть назначен типу "ReadableStream". Типы свойств 'eventNames' несовместимы. Тип '() => (строка | символ)[]' нельзя назначить типу () => строка [] '. Тип '(string | symbol)[]' нельзя назначить типу 'string[]'. node_modules/@types/node/index.d.ts(3512,22): ошибка TS2420: класс "Writable" неправильно реализует интерфейс "WritableStream". Типы свойств 'eventNames' несовместимы. Тип '() => (строка | символ)[]' нельзя назначить типу () => строка [] '. Тип '(string | symbol)[]' нельзя назначить типу 'string[]'. node_modules/@types/node/index.d.ts(3622,5): ошибка TS2309: Невозможно использовать назначение экспорта в модуле с другими экспортируемыми элементами.

node_modules/@types/node/index.d.ts (3705,5): ошибка TS2300: дубликат идентификатора "export=".

node_modules/@types/node/index.d.ts (3727,18): ошибка TS2300: дубликат идентификатора "Домен".

node_modules/@types/node/index.d.ts (3727,18): ошибка TS2420: класс "Домен" неправильно реализует интерфейс "NodeJS.Domain".

Типы свойств 'eventNames' несовместимы. Тип '() => (строка | символ)[]' нельзя назначить типу () => строка [] '. Тип '(string | symbol)[]' нельзя назначить типу 'string[]'.

node_modules/@types/node/index.d.ts (4019,5): ошибка TS2300: дубликат идентификатора "export=".

typings / globals / node / index.d.ts (78,6): ошибка TS2300: дубликат идентификатора 'BufferEncoding'.

typings / globals / node / index.d.ts (234,18): ошибка TS2300: повторяющийся идентификатор "EventEmitter".

typings / globals / node / index.d.ts (516,9): ошибка TS2502: прямая или косвенная ссылка на "BuffType" в собственной аннотации типа.

typings / globals / node / index.d.ts (517,9): ошибка TS2502: прямая или косвенная ссылка на 'SlowBuffType' в своей собственной аннотации типа.

typings / globals / node / index.d.ts (518,26): ошибка TS2300: повторяющийся идентификатор "Буфер".

typings / globals / node / index.d.ts (518,50): ошибка TS2300: дубликат идентификатора 'SlowBuffer'.

typings / globals / node / index.d.ts (580,22): ошибка TS2320: Интерфейс "Сервер" не может одновременно расширять типы "EventEmitter" и "Сервер".

Именованные свойства 'addListener' типов 'EventEmitter' и 'Server' не идентичны.

typings / globals / node / index.d.ts (580,22): ошибка TS2320: Интерфейс "Сервер" не может одновременно расширять типы "EventEmitter" и "Сервер".

Именованные свойства 'emit' типов 'EventEmitter' и 'Server' не идентичны.

typings / globals / node / index.d.ts (580,22): ошибка TS2320: Интерфейс "Сервер" не может одновременно расширять типы "EventEmitter" и "Сервер".

Именованные свойства 'on' типов 'EventEmitter' и 'Server' не идентичны.

typings / globals / node / index.d.ts (580,22): ошибка TS2320: Интерфейс "Сервер" не может одновременно расширять типы "EventEmitter" и "Сервер".

Именованные свойства "Once" типов "EventEmitter" и "Server" не идентичны.

typings / globals / node / index.d.ts (580,22): ошибка TS2320: Интерфейс "Сервер" не может одновременно расширять типы "EventEmitter" и "Сервер".

Именованные свойства 'prependListener' типов 'EventEmitter' и 'Server' не идентичны.

typings / globals / node / index.d.ts (580,22): ошибка TS2320: Интерфейс "Сервер" не может одновременно расширять типы "EventEmitter" и "Сервер".

Именованные свойства 'prependOnceListener' типов 'EventEmitter' и 'Server' не идентичны.

typings / globals / node / index.d.ts (580,22): ошибка TS2320: Интерфейс "Сервер" не может одновременно расширять типы "EventEmitter" и "Сервер".

Именованные свойства 'removeListener' типов 'EventEmitter' и 'Server' не идентичны.

typings / globals / node / index.d.ts (591,22): ошибка TS2320: Интерфейс "ServerResponse" не может одновременно расширять типы "EventEmitter" и "Writable".

Именованное свойство addListener типов "EventEmitter" и "Writable" не является идентичным.

typings / globals / node / index.d.ts (591,22): ошибка TS2320: Интерфейс "ServerResponse" не может одновременно расширять типы "EventEmitter" и "Writable".

Именованные свойства 'emit' типов 'EventEmitter' и 'Writable' не идентичны.

typings / globals / node / index.d.ts (591,22): ошибка TS2320: Интерфейс "ServerResponse" не может одновременно расширять типы "EventEmitter" и "Writable".

Именованные свойства 'on' типов 'EventEmitter' и 'Writable' не идентичны.

typings / globals / node / index.d.ts (591,22): ошибка TS2320: Интерфейс "ServerResponse" не может одновременно расширять типы "EventEmitter" и "Writable".

Именованные свойства "Once" типов "EventEmitter" и "Writable" не идентичны.

typings / globals / node / index.d.ts (591,22): ошибка TS2320: Интерфейс "ServerResponse" не может одновременно расширять типы "EventEmitter" и "Writable".

Именованные свойства 'prependListener' типов 'EventEmitter' и 'Writable' не идентичны.

typings / globals / node / index.d.ts (591,22): ошибка TS2320: Интерфейс "ServerResponse" не может одновременно расширять типы "EventEmitter" и "Writable".

Именованные свойства 'prependOnceListener' типов 'EventEmitter' и 'Writable' не идентичны.

typings / globals / node / index.d.ts (591,22): ошибка TS2320: Интерфейс "ServerResponse" не может одновременно расширять типы "EventEmitter" и "Writable".

Именованные свойства 'removeListener' типов 'EventEmitter' и 'Writable' не идентичны.

typings / globals / node / index.d.ts (621,22): ошибка TS2320: Интерфейс "ClientRequest" не может одновременно расширять типы "EventEmitter" и "Writable".

Именованное свойство addListener типов "EventEmitter" и "Writable" не является идентичным.

typings / globals / node / index.d.ts (621,22): ошибка TS2320: Интерфейс "ClientRequest" не может одновременно расширять типы "EventEmitter" и "Writable".

Именованные свойства 'emit' типов 'EventEmitter' и 'Writable' не идентичны.

typings / globals / node / index.d.ts (621,22): ошибка TS2320: Интерфейс "ClientRequest" не может одновременно расширять типы "EventEmitter" и "Writable".

Именованные свойства 'on' типов 'EventEmitter' и 'Writable' не идентичны.

typings / globals / node / index.d.ts (621,22): ошибка TS2320: Интерфейс "ClientRequest" не может одновременно расширять типы "EventEmitter" и "Writable".

Именованные свойства "Once" типов "EventEmitter" и "Writable" не идентичны.

typings / globals / node / index.d.ts (621,22): ошибка TS2320: Интерфейс "ClientRequest" не может одновременно расширять типы "EventEmitter" и "Writable".

Именованные свойства 'prependListener' типов 'EventEmitter' и 'Writable' не идентичны.

typings / globals / node / index.d.ts (621,22): ошибка TS2320: Интерфейс "ClientRequest" не может одновременно расширять типы "EventEmitter" и "Writable".

Именованные свойства 'prependOnceListener' типов 'EventEmitter' и 'Writable' не идентичны.

typings / globals / node / index.d.ts (621,22): ошибка TS2320: Интерфейс "ClientRequest" не может одновременно расширять типы "EventEmitter" и "Writable".

Именованные свойства 'removeListener' типов 'EventEmitter' и 'Writable' не идентичны.

typings / globals / node / index.d.ts (647,22): ошибка TS2320: Интерфейс 'IncomingMessage' не может одновременно расширять типы 'EventEmitter' и 'Readable'.

Именованные свойства 'addListener' типов 'EventEmitter' и 'Readable' не идентичны.

typings / globals / node / index.d.ts (647,22): ошибка TS2320: Интерфейс 'IncomingMessage' не может одновременно расширять типы 'EventEmitter' и 'Readable'.

Именованные свойства 'emit' типов 'EventEmitter' и 'Readable' не идентичны.

typings / globals / node / index.d.ts (647,22): ошибка TS2320: Интерфейс 'IncomingMessage' не может одновременно расширять типы 'EventEmitter' и 'Readable'.

Именованные свойства 'on' типов 'EventEmitter' и 'Readable' не идентичны.

typings / globals / node / index.d.ts (647,22): ошибка TS2320: Интерфейс 'IncomingMessage' не может одновременно расширять типы 'EventEmitter' и 'Readable'.

Именованные свойства "Once" типов "EventEmitter" и "Readable" не идентичны.

typings / globals / node / index.d.ts (647,22): ошибка TS2320: Интерфейс 'IncomingMessage' не может одновременно расширять типы 'EventEmitter' и 'Readable'.

Именованные свойства 'prependListener' типов 'EventEmitter' и 'Readable' не идентичны.

typings / globals / node / index.d.ts (647,22): ошибка TS2320: Интерфейс 'IncomingMessage' не может одновременно расширять типы 'EventEmitter' и 'Readable'.

Именованные свойства prependOnceListener типов EventEmitter и Readable не идентичны.

typings / globals / node / index.d.ts (647,22): ошибка TS2320: Интерфейс 'IncomingMessage' не может одновременно расширять типы 'EventEmitter' и 'Readable'.

Именованные свойства 'removeListener' типов 'EventEmitter' и 'Readable' не идентичны.

typings / globals / node / index.d.ts (698,18): ошибка TS2300: повторяющийся идентификатор "Агент".

typings / globals / node / index.d.ts (743,18): ошибка TS2300: Дубликат идентификатора "Рабочий".

typings / globals / node / index.d.ts (1004,22): ошибка TS2300: дубликат идентификатора 'CompleterResult'.

typings / globals / node / index.d.ts (1044,18): ошибка TS2300: Дубликат идентификатора "Скрипт".

typings / globals / node / index.d.ts (1323,22): ошибка TS2320: Интерфейс "Сервер" не может одновременно расширять типы "Socket" и "EventEmitter".

Именованные свойства 'removeListener' типов 'Socket' и 'EventEmitter' не идентичны.

typings / globals / node / index.d.ts (1886,18): ошибка TS2300: дубликат идентификатора 'TLSSocket'.

typings / globals / node / index.d.ts (2188,18): ошибка TS2420: класс "Readable" неправильно реализует интерфейс "ReadableStream".

Типы свойств "пауза" несовместимы. Тип '() => Readable' не может быть назначен типу {{): ReadableStream; (): ReadableStream; }". Тип "Readable" не может быть назначен типу "ReadableStream". Свойство isPaused отсутствует в типе "Читаемый". typings/globals/node/index.d.ts(2211,18): ошибка TS2420: класс "Writable" неправильно реализует интерфейс "WritableStream".

Типы свойств 'eventNames' несовместимы. Тип '() => (строка | символ)[]' нельзя назначить типу () => строка [] '. Тип '(string | symbol)[]' нельзя назначить типу 'string[]'. Тип 'строка | Символ 'не может быть назначен типу' строка '. Тип "символ" не может быть назначен типу "строка". typings/globals/node/index.d.ts(2229,18): ошибка TS2420: класс "Дуплекс" неправильно реализует интерфейс "ReadWriteStream".

Типы свойств "пауза" несовместимы. Тип "() => Дуплекс" не может быть назначен типу "{ (): ReadWriteStream; (): ReadWriteStream; }". Тип "Дуплекс" нельзя назначить типу "ReadWriteStream". Свойство isPaused отсутствует в типе "Дуплекс". typings/globals/node/index.d.ts(2250,18): ошибка TS2420: класс "Преобразование" неправильно реализует интерфейс "ReadWriteStream".

Типы свойств "пауза" несовместимы. Тип '() => Transform' нельзя назначить типу {{): ReadWriteStream; (): ReadWriteStream; }". Тип "Преобразование" нельзя назначить типу "ReadWriteStream". Свойство isPaused отсутствует в типе Transform. typings/globals/node/index.d.ts(2343,5): ошибка TS2300: повторяющийся идентификатор "export=".

typings / globals / node / index.d.ts (2365,18): ошибка TS2300: Дубликат идентификатора "Домен".

typings / globals / node / index.d.ts (2365,18): ошибка TS2420: класс "Домен" неправильно реализует интерфейс "NodeJS.Domain".

Типы свойств 'eventNames' несовместимы. Тип '() => (строка | символ)[]' нельзя назначить типу () => строка [] '. Тип '(string | symbol)[]' нельзя назначить типу 'string[]'. typings/globals/node/index.d.ts(2625,5): ошибка TS2300: повторяющийся идентификатор "export=".

`

2 ответа

Решение

Удалить набор текста. Типы Typescript теперь управляются npm в пространстве имен @types:

npm uninstall --save typings

Кроме того, удалите подкаталог typings.

Для обновления с углового 2 на угловое 4, пожалуйста, внимательно выполните следующие действия:

1 -Убедитесь, что вы не используете extends OnInit или используете extends с любым событием жизненного цикла. Вместо этого используйте инструменты.

2 - Обновите все ваши зависимости до версии 4 и последней версии, используя

Mac / Linux

npm install @angular/{animations,common,compiler,compiler-cli,core,forms,http,platform-browser,platform-browser-dynamic,platform-server,router}@4.0.0 typescript@latest --save

Windows

 npm install @angular/common@next @angular/compiler@next @angular/compiler-cli@next @angular/core@next @angular/forms@next @angular/http@next @angular/platform-browser@next @angular/platform-browser-dynamic@next @angular/platform-server@next @angular/router@next @angular/animations@next --save

3 -Если вы используете анимации в своем приложении, вы должны импортировать BrowserAnimationsModule из @angular/platform-browser/animations в ваше приложение NgModule.

4 - Переименуйте теги вашего шаблона в ng-template.

5 - Если вы хотите проверить свои формы, добавьте ngNativeValidate, потому что angular 4 добавил атрибут novalidate ко всем формам


если у вас все еще есть проблемы, попробуйте обновить nodejs и Typescript npm install -g typescript@latest

Если ничего из этого не помогло, пожалуйста, обновите ваш угловой CLI до последней версии

npm uninstall -g @angular/cli
npm cache clean
npm install -g @angular/cli@latest

и сгенерировать новый угловой проект 4, используя ng new newProject и переместите свою логику и шаблоны в новое приложение.

Другие вопросы по тегам