ion-spinner
The Spinner component provides a variety of animated SVG spinners. Spinners are visual indicators that the app is loading content or performing another process that the user needs to wait on.
The default spinner to use is based on the platform. The default spinner for ios
is "lines"
, and the default for android
is "crescent"
. If the platform is not ios
or android
, the spinner will default to crescent
. If the name
property is set, then that spinner will be used instead of the platform specific spinner.
Usage
- Angular
- Javascript
- React
- Stencil
- Vue
<!-- Default Spinner -->
<ion-spinner></ion-spinner>
<!-- Lines -->
<ion-spinner name="lines"></ion-spinner>
<!-- Lines Small -->
<ion-spinner name="lines-small"></ion-spinner>
<!-- Dots -->
<ion-spinner name="dots"></ion-spinner>
<!-- Bubbles -->
<ion-spinner name="bubbles"></ion-spinner>
<!-- Circles -->
<ion-spinner name="circles"></ion-spinner>
<!-- Crescent -->
<ion-spinner name="crescent"></ion-spinner>
<!-- Paused Default Spinner -->
<ion-spinner paused></ion-spinner>
<!-- Default Spinner -->
<ion-spinner></ion-spinner>
<!-- Lines -->
<ion-spinner name="lines"></ion-spinner>
<!-- Lines Small -->
<ion-spinner name="lines-small"></ion-spinner>
<!-- Dots -->
<ion-spinner name="dots"></ion-spinner>
<!-- Bubbles -->
<ion-spinner name="bubbles"></ion-spinner>
<!-- Circles -->
<ion-spinner name="circles"></ion-spinner>
<!-- Crescent -->
<ion-spinner name="crescent"></ion-spinner>
<!-- Paused Default Spinner -->
<ion-spinner paused></ion-spinner>
import React from 'react';
import { IonSpinner, IonContent } from '@ionic/react';
export const SpinnerExample: React.FC = () => (
<IonContent>
{/*-- Default Spinner --*/}
<IonSpinner />
{/*-- Lines --*/}
<IonSpinner name="lines" />
{/*-- Lines Small --*/}
<IonSpinner name="lines-small" />
{/*-- Dots --*/}
<IonSpinner name="dots" />
{/*-- Bubbles --*/}
<IonSpinner name="bubbles" />
{/*-- Circles --*/}
<IonSpinner name="circles" />
{/*-- Crescent --*/}
<IonSpinner name="crescent" />
{/*-- Paused Default Spinner --*/}
<IonSpinner paused />
</IonContent>
);
import { Component, h } from '@stencil/core';
@Component({
tag: 'spinner-example',
styleUrl: 'spinner-example.css',
})
export class SpinnerExample {
render() {
return [
// Default Spinner
<ion-spinner></ion-spinner>,
// Lines
<ion-spinner name="lines"></ion-spinner>,
// Lines Small
<ion-spinner name="lines-small"></ion-spinner>,
// Dots
<ion-spinner name="dots"></ion-spinner>,
// Bubbles
<ion-spinner name="bubbles"></ion-spinner>,
// Circles
<ion-spinner name="circles"></ion-spinner>,
// Crescent
<ion-spinner name="crescent"></ion-spinner>,
// Paused Default Spinner
<ion-spinner paused={true}></ion-spinner>,
];
}
}
<template>
<!-- Default Spinner -->
<ion-spinner></ion-spinner>
<!-- Lines -->
<ion-spinner name="lines"></ion-spinner>
<!-- Lines Small -->
<ion-spinner name="lines-small"></ion-spinner>
<!-- Dots -->
<ion-spinner name="dots"></ion-spinner>
<!-- Bubbles -->
<ion-spinner name="bubbles"></ion-spinner>
<!-- Circles -->
<ion-spinner name="circles"></ion-spinner>
<!-- Crescent -->
<ion-spinner name="crescent"></ion-spinner>
<!-- Paused Default Spinner -->
<ion-spinner paused></ion-spinner>
</template>
<script>
import { IonSpinner } from '@ionic/vue';
import { defineComponent } from 'vue';
export default defineComponent({
components: { IonSpinner },
});
</script>