angular2-toaster 双重通知
double notification with angular2-toaster
所以我使用 angular2-toaster packages 并且我总是收到双重通知。下面是这个包的使用示例。
我不知道为什么会这样,但我知道如果我在浏览器中重新加载我的 angular2 应用程序,这个问题就会得到解决。有人知道问题出在哪里吗?
Promotion.service.ts
private toasterService: ToasterService;
public toasterconfig : ToasterConfig =
new ToasterConfig({
tapToDismiss: true,
timeout: 5000
});
constructor(
private ApiClientService: ApiClientService,
toasterService: ToasterService
) {
this.toasterService = toasterService;
}
postVoucher(payload: JSON){
let serviceDec = "voucher";
let response;
let status;
let title;
let text;
//console.log(JSON.stringify(payload));;
return this.ApiClientService.postAPIObject(serviceDec, payload).then((response) => {
//console.log(response['response_payload']['id']);
if(response['status']['statusCode']==0){
this.router.navigate(['/Promotion', response['response_payload']['id']]);
status = 'success';
title = 'Erledigt!';
text = 'Promotion erstellt';
} else {
status = 'error';
title = 'Fehler';
text = 'Promotion konnte nicht erstellt werden';
}
this.toasterService.pop(status, title, text);
});
}
如果您需要更多其他部分的代码,请发表评论,我会提供。
对于所有遇到同样问题的人,这里有一些检查点可以检查哪些可能 运行 问题。
- 如果您将烤面包机与服务器响应结合使用,OPTIONS 也可能会触发烤面包机
- 如果您在服务和组件中使用烤面包机,请确保它不会触发两次
- Toaster 配置应设置在您应用的 app.module
所以我使用 angular2-toaster packages 并且我总是收到双重通知。下面是这个包的使用示例。
我不知道为什么会这样,但我知道如果我在浏览器中重新加载我的 angular2 应用程序,这个问题就会得到解决。有人知道问题出在哪里吗?
Promotion.service.ts
private toasterService: ToasterService;
public toasterconfig : ToasterConfig =
new ToasterConfig({
tapToDismiss: true,
timeout: 5000
});
constructor(
private ApiClientService: ApiClientService,
toasterService: ToasterService
) {
this.toasterService = toasterService;
}
postVoucher(payload: JSON){
let serviceDec = "voucher";
let response;
let status;
let title;
let text;
//console.log(JSON.stringify(payload));;
return this.ApiClientService.postAPIObject(serviceDec, payload).then((response) => {
//console.log(response['response_payload']['id']);
if(response['status']['statusCode']==0){
this.router.navigate(['/Promotion', response['response_payload']['id']]);
status = 'success';
title = 'Erledigt!';
text = 'Promotion erstellt';
} else {
status = 'error';
title = 'Fehler';
text = 'Promotion konnte nicht erstellt werden';
}
this.toasterService.pop(status, title, text);
});
}
如果您需要更多其他部分的代码,请发表评论,我会提供。
对于所有遇到同样问题的人,这里有一些检查点可以检查哪些可能 运行 问题。
- 如果您将烤面包机与服务器响应结合使用,OPTIONS 也可能会触发烤面包机
- 如果您在服务和组件中使用烤面包机,请确保它不会触发两次
- Toaster 配置应设置在您应用的 app.module