Не могу найти средство выбора даты, которое хорошо играет с угловым метеором - PullRequest
0 голосов
/ 08 июня 2018

Я пытался добавить в проект несколько библиотек DatePicker:

  • Meteor 1.7
  • Angular 6
  • Bootstrap 4

Для большинства пакетов, предназначенных для Angular, я получаю сообщение об ошибке при импорте при запуске.Ошибка обычно выглядит аналогично.Вот точная ошибка из ng-bootstrap:

Uncaught Error: Can't resolve all parameters for NgbAlert: (?).

В случае этой ошибки я нигде не включил NgbAlert, это исключительно от добавления NgbModule.forRoot(), так чтоне позволяйте предупреждению сбить вас с толку, проблема определенно связана с импортом модуля.

Я пробовал:

  • ng-pick-datetime
  • Ngx-Bootstrap
  • ng-bootstrap
  • и некоторые другие

Будем благодарны за любые предложения!

Ответы [ 2 ]

0 голосов
/ 26 сентября 2018

Я использую DatePicker угловой материал.Он хорошо работает с angular-meteor.

Я также использую ngbootstrap в своем приложении, но нахожу это более проблематичным, чем компоненты углового материала.Со временем я постепенно заменяю большинство компонентов материалами

0 голосов
/ 13 июня 2018

Полу-решение

Установить AOT = 1 в переменных среды метеора.

Обсуждение

Мне удалосьзаставить ng-bootstrap работать с помощью sym-linking библиотеки (чтобы обеспечить ее перенос), а затем собрать Meteor с включенным AOT.

Я сузил исходную ошибку до области в коде компилятора Angular JIT.Я действительно не знаю, как работает код углового компилятора Angular-Meteor по отношению к обычному потоку компиляции Angular, поэтому я не могу понять причину проблемы.Если кто-нибудь может дать объяснение более низкого уровня, я был бы очень признателен за это!


Обновление

В другом, но похожем вопросе лучшее полурешениебыл предоставлен ironmanu на этот вопрос .Это по-прежнему не идеальное решение, но оно пригодно для использования.

Решение состоит в том, чтобы добавить require('reflect-metadata'); в начало импорта модуля в app.module.ts.Это решает проблему во время JIT.Я не уверен, почему компилятор Angular не решает эту проблему по своей сути, но это помогает!

...