Левая часть выражения присваивания не может быть константой или свойством только для чтения
когда я использую эту строку на своем экспресс-сервере, она хорошо работает в TypeScript 1.x
mongoose.Promise = global.Promise;
( использование mongoose.Promise = global.Promise;
С Мангуст документ )
после обновления до TypeScript 2.x, он показывает эту ошибку в терминале и не позволяет мне запустить сервер.
левая часть выражения присваивания не может быть константой или свойство только для чтения.
Как я могу решить это? Спасибо
1 ответов
это потому, что в es6
все модуля!--10--> переменные рассматриваются как константы.
https://github.com/Microsoft/TypeScript/issues/6751#issuecomment-177114001
на TypeScript 2.0
Исправлена ошибка (не сообщать об этой ошибке).
С mongoose
по-прежнему использует commonjs
- var mongoose = require("mongoose")
- не es6
синтаксис импорта (который используется в typings), вы можете подавить ошибку предполагая модуль типа any
.
решение:
(mongoose as any).Promise = global.Promise;