Конструктор класса NgbDatepickerI18n не может быть вызван без 'new' - PullRequest
0 голосов
/ 15 января 2020

После обновления с Angular 5 до Angular 8 я получаю эту ошибку при открытии модального окна с DatePicker из пакета @ ng-bootstrap / ng- bootstrap. Ошибка выдается при попытке создать один из обоих объектов провайдера (NgbDatepickerI18n и NgbDateParserFormatter). Целое приложение собирается и работает нормально, за исключением этого.

@Component({
    selector: 'jhi-datepicker-termin',
    templateUrl: './datepicker-termin.component.html',
    styleUrls: ['./../datepicker.style.scss', './datepicker-termin.style.scss'],
    providers: [NgbDatepickerConfig,
        {provide: NgbDatepickerI18n, useClass: DatepickerI18n},
        {provide: NgbDateParserFormatter, useClass: NgbDatepickerParserFormatter}
        ],
})
export class DatepickerTerminComponent {

пакета. json:

"dependencies": {
    "@angular/common": "8.2.14",
    "@angular/compiler": "8.2.14",
    "@angular/core": "8.2.14",
    "@angular/forms": "8.2.14",
    "@angular/platform-browser": "8.2.14",
    "@angular/platform-browser-dynamic": "8.2.14",
    "@angular/router": "8.2.14",
    "@ng-bootstrap/ng-bootstrap": "5.1.5",
...
"devDependencies": {
    "@angular-devkit/build-angular": "0.803.22",
    "@angular/cli": "8.3.22",
    "@angular/compiler-cli": "8.2.14",
    "@ngtools/webpack": "8.3.21",
...
"engines": {
    "node": "12.14.0"
...

tsconfig. json:

{
    "compilerOptions": {
        "target": "es5",
        "module": "es2015",
        "moduleResolution": "node",
        "sourceMap": true,
        "emitDecoratorMetadata": true,
        "experimentalDecorators": true,
        "removeComments": false,
        "noImplicitAny": false,
        "skipLibCheck": true,
        "suppressImplicitAnyIndexErrors": true,
        "outDir": "target/www/app",
        "lib": [
            "es2018",
            "dom"
        ],
        "typeRoots": [
            "node_modules/@types"
        ],
        "baseUrl": "./",
        "paths": {
            "@angular/*": [
                "../node_modules/@angular/*"
            ]
        }
    },
    "include": [
        "src/main/webapp/app",
        "src/test/javascript/"
    ]
}

Переключение цель / lib для es6 / es2015 не помогает. Использование core. js в последней версии, как рекомендовано jhipster для совместимости с браузером. Бабель не используется. Немногие «несвязанные» пакеты устарели. Может ли это вызвать проблемы? Большое спасибо за помощь или любые намеки.

...