bootstrap 4 Angulaire 2 déroulant ne fonctionne pas
J'ai suivi les opérations suivantes pour installer bootstrap 4 dans mon Angulaire 2 projet: Accepté de Répondre, à la suite de la première 1,2,3 et 4 étapes
Cependant lorsque je ajouter ce qui suit HTML
à mon composant d'en-tête:
<nav class="navbar-dark bg-inverse">
<div class="container">
<a href="#" class="navbar-brand"></a>
<ul class="nav navbar-nav float-xs-right">
<li class="nav-item dropdown">
<a href="#" class="nav-link dropdown-toggle" id="nav-dropdown" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">[email protected]</a>
<div class="dropdown-menu" aria-labelledby="nav-dropdown">
<a href="#" class="dropdown-item">Sign Out</a>
</div>
</li>
</ul>
</div>
Comme vous pouvez le voir à son une liste déroulante en gros, quand je clique sur la liste déroulante l'actualisation de la page, au lieu de cela, il n'affiche pas le "signe" option.
C'est mon angular-cli.json
section styles:
"styles": [
"styles.css",
"../node_modules/bootstrap/dist/css/bootstrap.min.css"
],
Et à l'intérieur de mon Angulaire 2 module:
import { NgbModule } from '@ng-bootstrap/ng-bootstrap';
Je puis importer NgbModule dans les importations de l'article.
J'ai clairement manqué quelque chose, quelqu'un peut nous donner un indice sur ce qu'il peut-être exactement?
- Voici comment ajouter ng-amorçage de votre module: ng-bootstrap.github.io/#/getting-started. Et voici comment ng-bootstrap des listes déroulantes de travail: ng-bootstrap.github.io/#/composants/déroulante. Vous ne pouvez pas utiliser la documentation de bootstrap et de l'espoir exactement le même balisage de travail avec ng-bootstrap: le point de ng-bootstrap est de permettre à l'aide de bootstrap composants comme déroulant dans angulaire façon.
- Merci pour les liens! m'a aidée à sortir massivement! ai eu de travail à l'aide de ngbDropdown
- Notez que bootstrap 4 est l'alpha et n'est pas une bonne idée de l'utiliser pour des projets. Parce qu'il aura beaucoup de changements et n'est pas stable. Viens de l'utiliser pour l'apprentissage pour l'avenir.
- Je suis le seul à l'utiliser pour l'apprentissage.
Vous devez vous connecter pour publier un commentaire.
S'il vous plaît installer ng-bootstrap à partir de ce lien Prise En Main avec la commande suivante:
L'importation sur
app.module.ts
commeImportation sur
Ajouter
ngbDropdown
sur la liste déroulanteAjouter
ngbDropdownToggle
sur la liste déroulante de la Bascule DOMAjouter
ngbDropdownMenu
sur le menu déroulant DOMVariation sur @VictorLuchian pour nouveau BS4 bêta, il semble "show" de la classe doivent être ajoutés sur la liste déroulante du menu ainsi.
Cette version inclut un clic à l'extérieur de la fermer au lieu de mouseout
Certains plugins et CSS composants dépendent d'autres plugins. Si vous incluez des plugins individuellement,
assurez-vous de vérifier ces dépendances dans les docs. Notez également que tous les plugins dépendent
jQuery (ce qui signifie jQuery doit être inclus avant les fichiers du plugin).
Dans
.angular-cli.json
ajouter les lignes suivantes à la section scripts:La caisse définition ici
Comme Andrien est dit, vous pouvez simplifier le code comme ceci.
href="#"
attribut dans ilVous aurez besoin d'ajouter une liste déroulante de la directive dans l'ordre pour que cela fonctionne.
La directive ressemble à ceci:
Ensuite, vous allez ajouter l'attribut de la sorte:
Exemple De Code StackBliz Lien
Tout d'abord Bootstrap 3 & 4 Déroulant état actif classes sont différentes
Dans Bootstrap 3 : Dans la liste déroulante état ouvert; .dropdown-toggle parent de l'élément est ajouté 'ouvrir' classe CSS
Où, comme dans le Bootstrap 4 faire usage de "montrer" classe CSS
Dans la liste déroulante de l'état ouvert. Ici .dropdown-toggle élément parent et frère suivant l'élément avec la classe CSS .dropdown-menu sont ajoutés "montrer" Classe css
Donc de faire de bootstrap 4 déroulante de travail angulaire 4 nous permettra de créer de nouveaux angulaire de la directive de la classe et de l'ajouter à bootstrap déroulant dans angulaire modèle
Étape 1 - créer de nouvelles angulaire de la directive ng-bootstrap-liste.la directive.ts
Étape 2 : Importer de la présente Directive en application.le module.ts
Étape 3 : Appliquer la directive dans le Modèle à l'aide de appNgBoostrapDropdown
Exemple De Code StackBliz Lien
Inspiré par Rahul Talar, une première version(Étape 1 - créer de nouvelles angulaire de la directive ng-bootstrap-liste.la directive.ts), j'ai fait quelques semblable à l'aide Rendere2
Le CSS doit être dans le
<head></head>
tag.Je cite de bootstrap
Je continue en citant
Assurez-vous que vous avez de cette façon
voici le lien pour l'amorçage de la documentation où je reçois ce cite
https://v4-alpha.getbootstrap.com/getting-started/introduction/
et vérifier cette réponse dans le post que vous partagez le lien
https://stackoverflow.com/a/39809447/3284537
Quelqu'un a créé une nouvelle version de la bibliothèque de modèles spécifiquement conception Angulaire 2+. Selon le site, il a été développé par ng-équipe, bien que le lien qu'il donne obtient une réponse 404. Il n'travail, même si, et je l'ai utilisé à plusieurs endroits tout au long de mon projet en cours. Vous aurez juste à tirer dans la bibliothèque avec les mnp. Toutes les instructions sont sur ce site:
http://valor-software.com/ngx-bootstrap/#/
Cette page vous présente l'ensemble de l'installation et les instructions d'utilisation, vous avez besoin pour commencer. J'espère que cela aide!
j'ai utilisé une approche différente pour se déroulant sur collpased navbar.
ÉTAPE 1
Ajouter un événement de clic sur la barre de navigation bouton bascule
Html
Etape 2:
mettre en œuvre la fonction à l'intérieur de
Navbar composant.ts (ci-Dessus navbar modèle html est utilisé à l'intérieur de barre de navigation composant)
Étape 3
basé sur la barre de navigation bouton bascule cliquez sur ajouter une classe montrer(bootstrap 4) ou
open
pour les précédentes bootstrap versions.nous pouvons utiliser ngClass Directive pour ce
Flux de travail
Barre de navigation bouton bascule sera visible lors de la barre de navigation de geting s'est effondré pour les petites résolutions
par la manipulation de l'événement click du bouton, nous pouvons définir un indicateur pour vérifier si le bouton est cliqué ou pas
Basée sur cet indicateur nous permettra de
nous allons lier la classe css montrer à navabr div à l'aide de ngClass directive
Je suis avec des thèmes qui n'est pas de construire Angulaire et il contenir classique bootstrap, j'ai eu le même problème et résolu en modifiant bootstrap.js fichier.
Problème est que bootstrap écouter les événements avec $(document).sur et le problème est dans le "document" de la partie.
Dans mon fichier d'amorçage, c'est la ligne 18001
Variation $(document) à $("body") et il va fonctionner.
navbar.component.html
liste déroulante.la directive.ts
Angulaire 8 et Bootstrap 4.2 c'est la solution de travail je suis à l'aide d' :
1 - tout d'Abord j'ai créé une coutume de la directive. Ce qu'il fait est d'écouter le clic de l'événement de la liste déroulante contenant et basculer le .la classe d'exposition de la .dropdown-menu de l'élément (Bootstrap 4 norme de comportement). Aussi, il va fermer le menu déroulant si il y a un clic partout ailleurs sur le document.
2 - une Fois que votre directive est créé et enregistré. Assurez-vous d'appliquer la directive à la liste déroulante de l'élément, comme sur cet exemple: