react-nested-loader
Easiest way to inject a loader/spinner into a deeply nested component (like a button)
angular-button-loader
Angular directive to display loading spinner on button and disable the button while performing async calls. It supports Angular 4+.