web-dev-qa-db-fra.com

Dropdown Bootstrap 4 ne fonctionne pas dans la production de l'application angular

J'utilise bootstrap 4 dans mon application angular), la fonction déroulante fonctionne parfaitement en mode développeur mais en mode production, j'ai cette erreur:

Erreur non interceptée: DROPDOWN: L'option "popperConfig" a fourni le type "window" mais le type attendu "(null | object)".
sur Object.typeCheckConfig (vendors.e5434761d9d5f5d91054.bundle.js: 1)
sur e.t._getConfig (vendors.e5434761d9d5f5d91054.bundle.js: 1)
au nouvel e (vendors.e5434761d9d5f5d91054.bundle.js: 1)
à HTMLButtonElement. (vendors.e5434761d9d5f5d91054.bundle.js: 1)

et c'est le code que j'utilise dans mon application

<div class="dropdown">

  <button class="btn btn-secondary dropdown-toggle" type="button" 
    id="dropdown-search" data-toggle="dropdown"
    aria-haspopup="true" aria-expanded="false">

    Fiches consultées
  </button>

  <div class="dropdown-menu dropdown-filter filter-menu" 
    aria-labelledby="dropdown-search">

    <div *ngFor="let h of historiques" class="form-check">

      <input class="form-check-input" id="{{h.name}}" type="checkbox"
        value="{{h.name}}" [(ngModel)]="h.selected" 
        (change)="getSelected()">

      <label class="form-check-label" for="{{h.name}}">
        {{h.code}}
      </label>
    </div>
  </div>
</div> 
5
boh_geek

Nous avons le même problème pour le moment, mais uniquement avec IE11.

Mise à jour 1: Pour le moment, je peux vous dire que cela a quelque chose à voir avec la version angular/TypeScript. J'ai rétabli notre application de 8.2.14/3.5.3 à 8.0. 0/3.4.3 et il recommence à fonctionner.Nous allons maintenant remonter les différentes versions pour savoir, quel changement de version pose le problème.

Mise à jour 2: Après avoir testé plusieurs combinaisons de angular versions, nous avons découvert que ces deux packages étaient à l'origine de notre problème:

"@ angular-devkit/build-angular"

"@ angulaire/cli"

Un nouveau projet angular 8) utilise les versions suivantes:

"@ angular-devkit/build-angular": "~ .803.2"

"@ angular/cli": "~ 8.3.2"

Mais avec 8.3.x ça ne marche pas! Le retour de ces deux packages à la dernière version 8.2.x résout notre problème!

"@ angular-devkit/build-angular": ".802.2"

"@ angular/cli": "8.2.2"

1
Mystiker