Home Angular 12 Angular 12 Bootstrap 5 Popover Working Demo

Angular 12 Bootstrap 5 Popover Working Demo

by therichpost
Published: Last Updated on 11 comments
Angular 12 Bootstrap 5 Popover Working Demo

Hello friends, welcome back to my blog. Today in this blog post will tell you, Angular 12 Bootstrap 5 Popover Working Demo.


Bootstrap 5 Popover

Angular 12 Bootstrap 5 Popover Working Demo
Angular 12 Bootstrap 5 Popover Working Demo

Angular 12 came and Bootstrap 5 also and if you are new then you must check below two links:

  1. Angular12 Basic Tutorials
  2. Bootstrap 5

Friends now I proceed onwards and here is the working code snippet and please use carefully this to avoid the mistakes:

1. Firstly friends we need fresh angular 12 setup and for this we need to run below commands but if you already have angular 12 setup then you can avoid below commands. Secondly we should also have latest node version installed on our system:

npm install -g @angular/cli 

ng new angularboot5 //Create new Angular Project

cd angularboot5 // Go inside the Angular Project Folder

2. Now friends we need to run below commands into our project terminal to install bootstrap 5 modules into our angular application:

npm install bootstrap

npm i @popperjs/core

3. Now friends we just need to add below code into angularboot5/src/app/app.component.html file to get final out on the web browser:

<div class="container p-5">
    <h1 class="mb-5">therichpost.com</h1>
    <button type="button" class="btn btn-secondary me-2" data-bs-container="body" data-bs-toggle="popover" data-bs-placement="top" data-bs-content="Top popover">
      Popover on top
    </button>
    <button type="button" class="btn btn-secondary me-2" data-bs-container="body" data-bs-toggle="popover" data-bs-placement="right" data-bs-content="Right popover">
      Popover on right
    </button>
    <button type="button" class="btn btn-secondary me-2" data-bs-container="body" data-bs-toggle="popover" data-bs-placement="bottom" data-bs-content="Bottom popover">
      Popover on bottom
    </button>
    <button type="button" class="btn btn-secondary me-2" data-bs-container="body" data-bs-toggle="popover" data-bs-placement="left" data-bs-content="Left popover">
      Popover on left
    </button>
  </div>

4. Now friends we just need to add below code into angularboot5/src/app/app.component.ts file:

...
import { Popover } from 'node_modules/bootstrap/dist/js/bootstrap.esm.min.js'


export class AppComponent {
 ...

  ngOnInit() {
    Array.from(document.querySelectorAll('button[data-bs-toggle="popover"]'))
    .forEach(popoverNode => new Popover(popoverNode))
    
    
  }
}

5. Guy’s now add below code into angularboot5/angular.json file:

"styles": [
              ...
              "node_modules/bootstrap/dist/css/bootstrap.min.css"
          ],
"scripts": [
              ...
               "node_modules/bootstrap/dist/js/bootstrap.min.js"
           ]

Friends in the end must run ng serve command into your terminal to run the angular 12 project(localhost:4200).

Now we are done friends. If you have any kind of query, suggestion and new requirement then feel free to comment below.

Note: Friends, In this post, I just tell the basic setup and things, you can change the code according to your requirements.

I will appreciate that if you will tell your views for this post. Nothing matters if your views will be good or bad because with your views, I will make my next posts more good and helpful.

Jassa

Thanks

You may also like

11 comments

GUstavo June 7, 2021 - 11:20 pm

Thank you for the guide!
Can not import node_modules inside app.component.ts

this line does not work :

import { Popover } from ‘node_modules/bootstrap/dist/js/bootstrap.esm.min.js’

Reply
Ajay Malhotra June 8, 2021 - 4:11 am

Hi. it will work and please get the fresh setup the do.
Thanks.

Reply
Ajay Malhotra June 17, 2021 - 4:48 am

Please install this as well:
npm i @popperjs/core

Reply
Gustavo June 23, 2021 - 3:43 am

I’m using Angular on ‘strict’ mode, maybe that is why I can’t import from folder “node_modules”.

I solved it by installing :

npm i @types/bootstrap (installing this INSTEAD OF @popperjs/core AND importing bootstrap’s scripts inside angular.json file)

Then importing Popover like so:

import { Popover } from ‘bootstrap’;

But I couldn’t have learned it without your help, thank you so very much.

Reply
Ajay Malhotra June 23, 2021 - 4:34 am

Great.

Reply
Roger June 17, 2021 - 1:37 am

Not working error in
import { Popover } from ‘node_modules/bootstrap/dist/js/bootstrap.esm.min.js’

Reply
Ajay Malhotra June 17, 2021 - 4:48 am

Did you install this?
npm i @popperjs/core

Reply
Kailash Kumar June 17, 2021 - 4:39 am

Thanks for this, works fine.

Reply
Ajay Malhotra June 17, 2021 - 4:42 am

Great.

Reply
JAVIER August 2, 2021 - 7:51 pm

It worked for me. the only thing its that my popover dosen’t have style

Reply
Ajay Malhotra August 3, 2021 - 4:09 am

Good and I think you did not call popover in components.ts file.

Reply

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.