A library with more than 50 different loading spinners for Angular 4/5/6/7/8. (https://napster2210.github.io/ngx-spinner/)
- Latest Angular Dependencies
- Dynamic
z-index - Smooth animation while
hide/showthe spinner - Debounce time to delay the spinner from hide
- BUG fixes
Use appropriate version based on your Angular version.
| Angular 4 | Angular 5 | Angular 6/7 | Angular 8 |
|---|---|---|---|
>= v1.2.0 |
>= v2.0.0 |
v7.2.0 |
v8.1.0 |
- What's New
- Table of contents
- Browser Support
- Features
- Demo
- Installation
- Usage
- NgxSpinner Service
- NgxSpinner Component
- Versioning
- Creator
- Future Plan
- Credits
![]() Chrome |
![]() Firefox |
![]() IE / Edge |
![]() Safari |
![]() Opera |
|---|---|---|---|---|
| Latest ✔ | Latest ✔ | IE11, Edge ✔ | Latest ✔ | Latest ✔ |
- Angular 8 Support
- Multiple Spinners
- Configurable option through service
- Fullscreen Mode(Enable/Disable)
show()/hide()methods return promise- Dynamic
z-index - Smooth animation while
hide/showthe spinner
Working Demo(Not Updated one)
ngx-spinner is available via npm and yarn
Using npm:
$ npm install ngx-spinner --saveUsing yarn:
$ yarn add ngx-spinnerImport NgxSpinnerModule in in the root module(AppModule):
// Import library module
import { NgxSpinnerModule } from "ngx-spinner";
@NgModule({
imports: [
// ...
NgxSpinnerModule
]
})
export class AppModule {}Add NgxSpinnerService service wherever you want to use the ngx-spinner.
import { NgxSpinnerService } from "ngx-spinner";
class AppComponent implements OnInit {
constructor(private spinner: NgxSpinnerService) {}
ngOnInit() {
/** spinner starts on init */
this.spinner.show();
setTimeout(() => {
/** spinner ends after 5 seconds */
this.spinner.hide();
}, 5000);
}
}Now use in your template
<ngx-spinner></ngx-spinner>See Demo
NgxSpinnerService.show()Shows the spinnerNgxSpinnerService.hide()Hides the spinner
<ngx-spinner
bdColor="rgba(51,51,51,0.8)"
size="medium"
color="#fff"
type="ball-scale-multiple"
>
<p style="font-size: 20px; color: white">Loading...</p>
</ngx-spinner>- [bdColor]: RGBA color format.
To set background-color for backdrop, default
rgba(51,51,51,0.8)whereaplhavalue(0.8) is opacity of backdrop - [size]: Anyone from
small,default,medium,large. To set size of spinner, defaultlarge - [color]: Any css color format.
To set color of spinner, default
#fff - [type]: Choose any animation spinner from Load Awesome.
To set type of spinner, default
ball-scale-multiple - [fullScreen]:
trueorfalseTo enable/disable fullscreen mode(overlay), defaulttrue - [name]: For multiple spinners
To set name for spinner, default
primary - [zIndex]: For dynamic z-index
To set z-index for the spinner, default
99999
- You can pass
HTMLcode as loading text now, instead of input parameter(loadingText). Check above code for reference. - If you want multiple
ngx-spinnerinstance, just addnameattribute withngx-spinnercomponent. But in this case, you've to pass that particular name of a spinner inshow/hidemethod. Check Demo - You can also change the options/configuration of spinner through service now.
this.spinner.show("mySpinner", {
type: "line-scale-party",
size: "large",
bdColor: "rgba(100,149,237, .8)",
color: "white"
});- Go to the Load Awesome.
- Select any animation, copy name of animation, replace all spaces with hyphen(-) and all letters should be lowercase.
- Let's say if I select "Ball 8bits" animation then
typewill beball-8bits. - For more information you can check it out Demo
- Let's say if I select "Ball 8bits" animation then
ngx-spinner will be maintained under the Semantic Versioning guidelines. Releases will be numbered with the following format:
<major>.<minor>.<patch>
For more information on SemVer, please visit http://semver.org.
- Image support for spinner
- Interceptor Implementation
- Better DEMO website
Inspired by Load Awesome by Daniel Cardoso.
Thanks Alex Vieira Alencar for helping me with Multiple Spinner Support.
ngx-spinner is MIT licensed.





