🔔 Alert..!! Get 2 Month Free Cloud Hosting With $200 Bonus From Digital Ocean ACTIVATE DEAL

A simple, lightweight module for displaying notifications in your Angular 2/4 app.

Modal_Popup Plugins

Documentation

ng2-notify-popup

for Angular 4.x.

Based on ng-notify for Angular 1.x by Mat Owens

View Demo

Installation

$ npm install --save ng2-notify-popup

Usage

Configure your System.config

System.config({   defaultJSExtensions: true,   map: {     '@angular/core': 'npm:@angular/core/bundles/core.umd.js',     "rxjs": "node_modules/rxjs",     ...     'ng2-notify-popup' : 'npm:ng2-notify-popup',   },   packages: {             'app': {       main : './main.ts',       defaultJSExtensions : 'ts'     },     "ng2-notify-popup" : {       main:'./index.js',       defaultExtension : 'js'     }   } });

and then from your Angular AppModule:

import { BrowserModule } from '@angular/platform-browser'; import { NgModule } from '@angular/core';  import { AppComponent } from './app.component';  /** IMPORTANT : IE10 and IE11 requires the following to support `@angular/animation` (which is used by this module). Run `npm install --save web-animations-js`. */ import 'web-animations-js';    // Import library import { NgNotifyPopup } from 'ng2-notify-popup';  @NgModule({   declarations: [     AppComponent   ],   imports: [     BrowserModule,     // Add module to imports     NgNotifyPopup   ],   providers: [],   bootstrap: [AppComponent] }) export class AppModule { }

Once your library is imported, you can use its Notification service

// You can now use this library service to show popup anywhere in angular app import { Component } from '@angular/core'; import { NotificationService } from 'ng2-notify-popup';  @Component({   selector: 'app-root',   templateUrl: './app.component.html',   styleUrls: ['./app.component.css'],   providers: [NotificationService] }) export class AppComponent {    constructor(private notify: NotificationService) { }    // to append in body   show(text: string, type: string): void {     this.notify.show(text, { position:'top', duration:'2000', type: 'success' });   }   // to append in any other component.   showModular(text: string, type: string): void {     this.notify.show(text, { position:'top', duration:'2000', type: 'success', location: '#modular' });   } 

API

NotificationService.setConfig( options: object )

This method can be used to override the default configuration provided by the module. All params are optinal

NotificationService.setConfig({                                 position: 'top/bottom',                                 type: 'info/success/warn/error/grimace/default',                                 duration: 4000,                                 sticky: true/false,                              })

NotificationService.show( text: string, options?: object )

show() method can be called with an optional second argument to override the global default config

// Simple notification NotificationService.show("Success"); // Notification with options NotificationService.show("Error occured", { position: 'top', type: 'error' }) //Show notification inside a division (MUST have position:relative) NotificationService.show("Inside a div", { location: '#my-div' })

NotificationService.destroy()

// Destroy any active notification NotificationService.destroy();

Custom type

You can create your own type in CSS as follows

.ngn-wild {   background-color: #f4a460;   }

Development

To generate all *.js, *.d.ts and *.metadata.json files:

$ npm run build

To lint all *.ts files:

$ npm run lint

License

MIT © Shubhangi Gupta


You May Also Like