Я подготовил рабочий пример.К сожалению, этот код не работает в IE11.Чтобы заставить его работать в IE11, необходимо настроить CSS.
Пример основан на решении, приведенном здесь: Ссылка
Суть в том, что из примера по ссылке: вы указываете, сколько у вас уведомлений по атрибуту data-count:
<button class="notification-button" data-count="5"></button>
Чтобы сделать его динамическим в angularjs, вы должны связать этот атрибут с областью действия varialbe, используя ng-attr- *директива
<button class="notification-button" ng-attr-data-count="{{counter}}"></button>
AngularJS документы gn-attr - *
Когда использовать ng-attr?
angular
.module('myApp', [])
.controller('myCtrl', myCtrl);
myCtrl.inject = ['$scope'];
function myCtrl($scope) {
$scope.counter = 0;
$scope.increment = function() {
$scope.counter++;
}
}
.notification-button {
background: linear-gradient(to bottom, rgba(37, 130, 188, 1) 0%, rgba(41, 137, 216, 1) 32%, rgba(41, 137, 216, 1) 42%, rgba(175, 224, 234, 1) 100%);
width: 60px;
height: 60px;
border-radius: 10px;
border: none;
margin-top: 40px;
margin-left: 40px;
position: relative;
box-shadow: 0 2px 5px rgba(0, 0, 0, 0.4);
}
.notification-button:before {
content: attr(data-count);
width: 18px;
height: 18px;
line-height: 18px;
text-align: center;
display: block;
border-radius: 50%;
background: rgb(67, 151, 232);
border: 1px solid #FFF;
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
color: #FFF;
position: absolute;
top: -7px;
left: -7px;
}
.notification-button.badge-top-right:before {
left: auto;
right: -7px;
}
.notification-button.badge-bottom-right:before {
left: auto;
top: auto;
right: -7px;
bottom: -7px;
}
.notification-button.badge-bottom-left:before {
top: auto;
bottom: -7px;
}
<!DOCTYPE html>
<html lang="en" ng-app="myApp" ng-controller="myCtrl">
<head>
<meta charset="UTF-8">
<title>Test</title>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.7.5/angular.min.js"></script>
</head>
<body>
<button ng-click="increment();">Increment</button>
<div>
{{counter}}
</div>
<button class="notification-button" ng-attr-data-count="{{counter}}"></button>
</body>
</html>