Невозможно использовать ANT Design NG-ZORRO; экспорт 'ɵɵinject' не был найден в '@ angular / core'

Я стараюсь использовать в своем проекте библиотеку ANT Design NG-ZORRO. Но когда я компилирую код, я получаю следующее предупреждение:

WARNING in ./node_modules/ng-zorro-antd/fesm5/ng-zorro-antd-core.js 2294:66-84
"export 'ɵɵdefineInjectable' was not found in '@angular/core'

Это приводит к ошибке выполнения:

Uncaught TypeError: Object(...) is not a function
    at ng-zorro-antd-core.js:2294
    at Module../node_modules/ng-zorro-antd/fesm5/ng-zorro-antd-core.js (ng-zorro-antd-core.js:2296)

Я искал в Интернете и пробовал различные комбинации версий задействованных пакетов. Но заставить его работать не удалось.

Выдержка из package.json:

"dependencies": {
    "@angular/animations": "^7.2.15",
    "@angular/common": "^7.2.13",
    "@angular/compiler": "^7.2.13",
    "@angular/core": "^7.2.13",
    "@angular/forms": "^7.2.13",
    "@angular/http": "^7.2.13",
    "@angular/platform-browser": "^7.2.13",
    "@angular/platform-browser-dynamic": "^7.2.13",
    "@angular/platform-server": "^7.2.13",
    "@angular/router": "^7.2.13",
    "@aspnet/signalr": "^1.1.4",
    "@fortawesome/angular-fontawesome": "^0.3.0",
    "@fortawesome/fontawesome-svg-core": "^1.2.22",
    "@fortawesome/free-regular-svg-icons": "^5.10.2",
    "@fortawesome/free-solid-svg-icons": "^5.10.2",
    "@nguniversal/module-map-ngfactory-loader": "^7.1.1",
    "ajv": "^6.10.0",
    "aspnet-prerendering": "^3.0.1",
    "bootstrap": "^4.3.1",
    "core-js": "2.6.5",
    "jquery": "^3.4.0",
    "messagepack": "^1.1.10",
    "ng-zorro-antd": "^8.3.0",
    "popper.js": "^1.15.0",
    "rtcp-web-viewer": "^2.0.3",
    "rxjs": "^6.5.3",
    "zone.js": "^0.9.1"
  }

Что мне нужно сделать, чтобы устранить эти предупреждения и ошибки, чтобы пакет работал?


person Patrik Gfeller    schedule 11.09.2019    source источник


Ответы (1)


Это потому, что вы используете несовместимые версии библиотеки ng-zorro-antd с библиотеками Angular, которые вы используете.

Версии 8.0.0 и выше библиотеки ng-zorro-antd требуют обновления зависимостей Angular для использования версии 8.0.0 и выше (см. примечания к выпуску для версии 8.0.0 для получения дополнительной информации).

Таким образом, вы должны либо:

  • Обновите зависимости Angular до версии 8 и выше (подробности о том, что делать для обновления, см. В Руководстве по обновлению Angular) , или

  • Понизьте версию библиотеки ng-zorro-antd до более старой (в этом случае вы должны использовать последнюю 7.x.x версию - 7.5.1)

person Edric    schedule 11.09.2019
comment
Благодарю за ваш ответ; Я установил версию 7.5.1 и устранил все предупреждения npm. Теперь вроде заработало :-). - person Patrik Gfeller; 12.09.2019