Notify.js with AngularJS: 将 $scope 内容传递给通知

Notify.js with AngularJS: pass $scope content to notification

有什么方法可以将 Angular 变量传递给 Notify.js 函数吗? 我已经尝试在函数内部使用 $.notify() 使我的函数处于 Angular 范围内,但它没有 运行。如果我将该函数作为普通 JS 函数移出应用程序的范围,它 运行 就可以了,但我无法使用其中存储的 Angular 数据。

我有:

function showAchievement () {
  $.notify({
    title: '{{angularData}}',
    message: '{{moreData}}.'
  }, {
    type: 'achievement',
    placement: {
      align: "left"
    },
    animate:{
      enter:'animated fadeInLeft',
      exit:'animated fadeOutRight'
    },
    delay: 5000
  });
}

和我的 CSS:

.alert-achievement {
  background: url("../img/purple-bg.png") no-repeat;
  border: 4px solid purple;
  color: dodgerblue;
  padding: 10px;
  width: 25%;
} 

.alert-achievement > [data-notify="title"] {
  color: purple;
  text-align: center;
  display: block;
  font-weight: bold;
  margin-bottom: 5px;
}

.alert-achievement > [data-notify="message"] {
  font-size: 80%;
}

它在 Angular 之外工作得很好。它甚至在 Angular 内部被触发。我只需要根据 Angular $scope.title.

的内容传递标题和消息

在函数上放置参数:

function showAchievement (title, message) {
  $.notify({
    title: title,
    message: message + '.'
  }, {
    type: 'achievement',
    placement: {
      align: "left"
    },
    animate:{
      enter:'animated fadeInLeft',
      exit:'animated fadeOutRight'
    },
    delay: 5000
  });
}

然后以范围变量作为参数调用函数:

showAchievement($scope.angularData, $scope.moreData);

有关详细信息,请参阅 MDN JavaScript Reference - functions