在AngularJS(版本1.x)中,我们有ng-notify用于显示通知,我们想知道 如何在Angular 2中实现相同的功能。
知道怎么做吗?
答案 0 :(得分:6)
我使用过包含很多UI组件的PrimeNG软件包, 有消息组件来显示通知: PrimeNG - Messages Component
答案 1 :(得分:5)
如果我们正在创建某个应用程序的完整FE,我们正在使用已实施小吃店的Angular2材料。
https://github.com/angular/material2
https://material.angular.io/components
或者您可以轻松整合烤面包机,以显示漂亮的材料烤面包 https://github.com/PointInside/ng2-toastr
我强烈建议两者都在生产中进行测试(虽然材料库目前仍处于测试阶段)
答案 2 :(得分:4)
另一种选择是 ng2-toasty
以下是步骤:
1)使用 - npm install ng2-toasty --save
2)更新systemjs.config.js
System.config({
map: {
'ng2-toasty': 'node_modules/ng2-toasty/bundles/index.umd.js'
}
});
3)导入ToastyModule
import {BrowserModule} from "@angular/platform-browser";
import {NgModule} from '@angular/core';
import {ToastyModule} from 'ng2-toasty';
@NgModule({
imports: [
BrowserModule,
ToastyModule.forRoot()
],
bootstrap: [AppComponent]
})
export class AppModule {
}
4)为您的应用程序使用ToastyService
import {Component} from '@angular/core';
import {ToastyService, ToastyConfig, ToastOptions, ToastData} from 'ng2-toasty';
@Component({
selector: 'app',
template: `
<div>Hello world</div>
<button (click)="addToast()">Add Toast</button>
<ng2-toasty></ng2-toasty>
`
})
export class AppComponent {
constructor(private toastyService:ToastyService, private toastyConfig: ToastyConfig) {
// Assign the selected theme name to the `theme` property of the instance of ToastyConfig.
// Possible values: default, bootstrap, material
this.toastyConfig.theme = 'material';
}
addToast() {
// Just add default Toast with title only
this.toastyService.default('Hi there');
// Or create the instance of ToastOptions
var toastOptions:ToastOptions = {
title: "My title",
msg: "The message",
showClose: true,
timeout: 5000,
theme: 'default',
onAdd: (toast:ToastData) => {
console.log('Toast ' + toast.id + ' has been added!');
},
onRemove: function(toast:ToastData) {
console.log('Toast ' + toast.id + ' has been removed!');
}
};
// Add see all possible types in one shot
this.toastyService.info(toastOptions);
this.toastyService.success(toastOptions);
this.toastyService.wait(toastOptions);
this.toastyService.error(toastOptions);
this.toastyService.warning(toastOptions);
}
}
此处提供简单演示 - http://akserg.github.io/ng2-webpack-demo/#/toasty
此处提供示例代码 - https://github.com/akserg/ng2-systemjs-demo
答案 3 :(得分:1)
ng2-notify-popup基于ng-notify。您可以尝试使用它。
答案 4 :(得分:1)
检查这个npm包,它非常易于使用,可能就是你需要的!
答案 5 :(得分:1)
您可以使用Snackbar
导入
Grid.RowSpan
显示:
import {MatSnackBarModule} from '@angular/material/snack-bar';
回调:
let snackBarRef = snackBar.open('Message archived');
答案 6 :(得分:0)
我建议'angular2-notifications'使用简单灵活。
了解更多详情和演示:https://jaspero.co/resources/projects/ng-alerts
此外,我们可以让他们用ng2-alerts
来推动他们