防止同一页面上有多个toastr实例

时间:2018-07-19 08:09:43

标签: jquery toastr

有没有一种方法可以防止烤面包机​​在单个页面上显示同一消息的多个实例。我使用一页来满足我的添加和更新功能。这是我的代码段

window.toastr.options = {
          "toastClass": "toast-success-create-campaign",
          "closeButton": false,
          "debug": false,
          "newestOnTop": true,
          "progressBar": false,
          "positionClass": "toast-top-center",
          "onclick": null,
          "showDuration": "300",
          "hideDuration": "1000",
          "timeOut": "5000",
          "extendedTimeOut": "1000",
          "showEasing": "swing",
          "hideEasing": "linear",
          "showMethod": "fadeIn",
          "hideMethod": "fadeOut",
          "maxOpened":1,
          "preventOpenDuplicates": true
}

$('.btn-add').on('click',function(){
  window.toastr.success('Add Called','Success!');
})

$('.btn-update').on('click',function(){
  window.toastr.success('Update Called','Success!');
})

看来,toastr保留了所有toast调用的缓存,这就是为什么当我尝试执行该函数时,它会彼此叠加而不是仅显示一个。如何修改代码以获得所需的输出。

1 个答案:

答案 0 :(得分:0)

Toastr的本机JavaScript版本不支持类似preventOpenDuplicates的功能,只有angular-toastr支持此功能。

看着source code,文本Open甚至都不包含在其中。
有一个拉取请求(Prevent duplicate #568)要求添加对preventOpenDuplicates的支持,但没有合并,也没有评论。