JSFiddle - React, Tailwind, and code Playground

HTML

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.6.5/angular.min.js"></script>
<div ng-app="App">
 <div ng-controller="myCtrl">
      <img image-on-load="ImgLoaded" ng-src="https://firebasestorage.googleapis.com/v0/b/ortototem.appspot.com/o/Photos%2F51%2FCarteira?alt=media&token=a08135b8-befe-4fed-8b45-957f1c97f20b"/>
      <button type="button"  ng-disabled="loading">Some Action</button>
  </div>

</div>

CSS

.block {
	height: 100px;
	width: 100px;
	background-color: blue;
	margin: 15px 10px;
}

JavaScript

var app=angular.module('App',[]);

app.controller('myCtrl', ['$scope', function($scope){
  
  $scope.url="https://firebasestorage.googleapis.com/v0/b/ortototem.appspot.com/o/Photos%2F51%2FCarteira?alt=media&token=a08135b8-befe-4fed-8b45-957f1c97f20b"
   $scope.ImgLoaded=function(val){
    $scope.loading=false;
  }
 }])

app.directive('imageOnLoad', function() {
        return {
            restrict: 'A',
            link: function(scope, element, attrs) {
                element.bind('load', function() {
                   scope.$apply(attrs.imageOnLoad)(true);
                });
                element.bind('error', function(){
                  scope.$apply(attrs.imageOnLoad)(false);
                });
            }
        };
    })