AngularJS $ mdToast不隐藏

时间:2016-07-08 20:55:28

标签: javascript angularjs angular-material

我正在构建一个使用AngularJS和Angular Material前端的Web应用程序。我想使用$ mdToast作为错误通知。

我的主应用程序控制器(AppCtrl)中有以下代码:

Line Items

但不知何故,当hideDelay在另一个$ scope中触发错误后,toast不会隐藏。

有人知道如何解决此问题吗?

1 个答案:

答案 0 :(得分:1)

您的代码似乎对我很好。我没有尝试从另一个范围播放该事件。您可以尝试使用$timeout来隐藏对话框,而不是像this Plunker中那样隐藏hideDelay()函数。

更新的代码如下所示:

$rootScope.$on('httpError', function (event, errorMessage) {
  $mdToast.show(
    $mdToast.simple()
    .textContent(errorMessage.message)
    .position('top right')
  );
  $timeout(function() {
    $mdToast.hide();
  }, 3000);
});