我使用了Angular-toaster,它看起来很棒。搜索堆栈,未找到:
如何在 Controller 中的 toastr 容器中存储开放式 toast 的数量?

angular.module('main', ['toaster', 'ngAnimate'])
.controller('myController', function($scope, toaster) {
    $scope.pop = function(){
        toaster.pop('info', "title", "text");
    };
    $scope.toastCount = function(){
         //solution goes here
    }
});

在html中:
<toaster-container></toaster-container>

上面的代码某种程度上是伪的,所以您应该熟悉Angular-toaster才能回答这个问题。
非常感谢您的帮助;)

最佳答案

您可以使用Angularjs-toaster的onShowCallbackonHideCallback来获取当前打开的 toastr 数量,如下所示:

app.controller('myController', function($scope, toaster, $window) {
  $scope.count = 0
  $scope.pop = function() {
    toaster.pop({
      type: 'success',
      title: 'Success',
      body: 'This will work !',
      onHideCallback: function() {
        $scope.count--;
      },
      onShowCallback: function() {
        $scope.count++;
      }
    });
  };
});

如您所见,在onShowCallback上,我的计数增加了,在onHideCallback上,我的计数减小了,以获取当前打开的 toastr 的计数。

这也是一个工作示例:
https://plnkr.co/edit/5WPdpYZJXUX5316obPej?p=preview

关于javascript - AngularJS-Toaster toastr 容器中的 toast 数量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45818829/

10-12 07:39