+
Progress and activity indicators are visual indications of an app loading content.
+
The following classes can be applied to change the color palette:
+
+
+
+
+
+
+ Restart
+
+
+
+
+
+
+
+ <md-spinner :md-progress="progress"></md-spinner>
+ <md-spinner :md-progress="progress" class="md-accent"></md-spinner>
+ <md-spinner :md-progress="progress" class="md-warn"></md-spinner>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <md-spinner md-indeterminate></md-spinner>
+ <md-spinner md-indeterminate class="md-accent"></md-spinner>
+ <md-spinner md-indeterminate class="md-warn"></md-spinner>
+
+
+
+
+
+
+
+
+
+
+
+
+
+ <md-spinner :md-size="20" md-indeterminate class="md-accent"></md-spinner>
+ <md-spinner :md-size="60" md-indeterminate class="md-warn"></md-spinner>
+ <md-spinner :md-size="150" md-indeterminate></md-spinner>
+
+
+
+
+
+
+
+
+ cloud_upload
+ done
+
+
+
+
+
+
+
+
+ <div class="complete-example" v-md-theme="'orange'">
+ <md-button class="md-fab" @click.native="restartProgress" :class="{ 'md-primary': done }">
+ <md-icon v-show="!done">cloud_upload</md-icon>
+ <md-icon v-show="done">done</md-icon>
+ </md-button>
+
+ <md-spinner :md-size="75" :md-progress="progress" v-show="transition && progress < 115"></md-spinner>
+ </div>
+
+
+
+ export default {
+ data: () => ({
+ progress: 0,
+ progressInterval: null,
+ done: false,
+ transition: true
+ }),
+ methods: {
+ startProgress() {
+ this.progressInterval = window.setInterval(() => {
+ this.progress += 3;
+
+ if (this.progress > 115) {
+ this.done = true;
+ window.clearInterval(this.progressInterval);
+ window.setTimeout(() => {
+ this.done = false;
+ }, 3000);
+ }
+ }, 100);
+ },
+ restartProgress() {
+ this.progress = 0;
+ this.transition = false;
+ this.done = false;
+
+ window.clearInterval(this.progressInterval);
+ window.setTimeout(() => {
+ this.transition = true;
+ this.startProgress();
+ }, 600);
+ }
+ }
+ };
+
+
+
+
+