Fully Customizable Factory Modal Window Implementation for Angular2

ng2-modal-Dialog is a fully generic, customizable, and factory-fluent modal window implementation for Angular2. The only dependency of this module is angular itself, which works with any method preprocessor where the conditional component itself is generated during runtime.

angular lazy load dialog, angular 2 modal popup example, dynamic dialog primeng, load dynamic components inside a modal dialog in angular

How to make use of it:


npm install --save ng2-modal-dialog

1. Import the module into app.module.ts a file and conditional component.

import { ModalModule } from 'ng2-modal-dialog/modal.module';
import { LoginModalComponent } from './login-modal/login-modal.component';
declarations: [
imports: [

2. Add a placeholder in app.componenet.html

<a href="javascript:void(0);" (click)="openLoginModal(passedParameter = {
    username: 'user',
    password: 'pass'
  <!-- the place holder for all modals that will be opened -->

3. In the conditions parent component, you will need to import the following.

import { ModalService } from 'ng2-modal-dialog/modal.module';
import { LoginModalComponent } from './login-modal/login-modal.component';
// The AppModule from the application src
import { AppModule } from './app.module';

// Instancing a new ModalService in the parent component constructor
constructor(private modalService: ModalService) { }

// Click function to open the modal
  openLoginModal(userCreds): void {
  	// Service callback function to create the modal with an object passed as a parameter
    this.modalService.create(AppModule, LoginModalComponent, {userCreds});

angular2 factory made modal dialog, ng2-modal-dialog Plugin/Github

See Demo And Download

Official Website(DanielNetzer): Click Here

This superior jQuery/javascript plugin is developed by DanielNetzer. For extra advanced usage, please go to the official website.

Related Posts


Responsive Drag and Drop File Uploader/Download Plugin | 5x5_jq_uploader

5x5_jq_uploader plugin can be used to instantly create a drop file area and file queue with a little bit of preparation. Bootstrap is used for responsive planning…


Stylesheet For Implementing Dark Mode with Bootstrap

Bootstrap Dark Mode provides a style sheet and two texts that allow you to implement Dark Mode on your website. Initially loaded based on user preferences, can…


Multi-purpose Navigation Menu for Javascript Library | jQuery Corenav

coreNavigation is a multipurpose navigation menu for a jquery based javascript library, comes with more style, and is easy to integrate. 11 Default Menu 2 Responsive Navigation…


Simple Multi-Select Dropdown Pure Vanilla Javascript | multiSelect.js

MultiSelect.js is a simple, clean, and progressive JavaScript library designed for easy integration with any type of project or system. The design was heavily influenced by the…


Confetti Falling Animation Effect In JavaScript | party.js

Party.js is a JavaScript library to brighten user site experience with visual effects! Celebrate success with dom confetti! The library is written in TypeScript and compiled into…


How To Create A Popup in HTML with CSS

How to create popup in html with css – Popup without JavaScript is an elegant pop-up panel component with an animated scale, written in CSS. Have you…