

Fancy Cloud Sync Button
source link: https://github.com/altrusl/vuesence-cloud-sync-button
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Cloud Sync Button
Button/progress-bar with cloud synchronization animation in vanilla JavaScript, Vue.js and Web component formats
How to use
This component is available in three versions:
- Vue.js component - in the
src
directory - Vanilla JavaScript code - in the
vanilla-javascript-version
directory - As a
Web component
- in theweb-component-version
directory
Vanilla JavaScript version
The code is self-explanatory
Web Component version
It's built using Custom Elements - a well supported technology nowadays. For older browsers a polifill is available
<cloud-sync-button options='{ "loadColor": "#81d427", "strokeColor": "#fff", "btnColor": "#725fdf", "titleStart": "Sync", "titleEnd": "Done" }' />
const aBtn = document.querySelector("cloud-sync-button"); ... aBtn.initSync(); aBtn.updateSync(10); aBtn.completeSync(); aBtn.resetSync();
Vue version
Vue component consists of one CloudSyncButton.vue
file that can be copy-pasted into your Vue.js project or can be plugged in as an NPM package:
npm install @vuesence/cloud-sync-button --save
Then you can use it in the your Vue code:
<template> <div id="app"> <CloudSyncButton title="Sync" titleDone="Done" @click.native="startSync" :syncProgress="syncProgress" :inSync="inSync" :styling="{ loadColor: '#81d427', strokeColor: '#fff', btnColor: '#011e4a' }" /> </div> </template> <script> import CloudSyncButton from "@vuesence/cloud-sync-button"; export default { name: "App", components: { CloudSyncButton, }, data() { return { syncProgress: 0, inSync: false, }; }, methods: { startSync() { this.syncProgress = 0; this.inSync = true; }, stopSync() { this.syncProgress = 0; this.inSync = false; }, completeSync() { this.syncProgress = 100; setTimeout(() => { this.stopSync(); }, 2000); }, }, }; </script>
Two reactive parameters handle the button state: inSync
- starts and stops the synchronization, and syncProgress
- shows the synchronization progress.
startSync
, stopSync
and completeSync
methods are used to manage the button representation programmatically.
For more details please see an example of usage in the App.vue
Demo
https://altrusl.github.io/vuesence-cloud-sync-button/
Playground
Try it on codesandbox.io
Check out my other Vue.js components
- Vuesence book - minimalistic Vue.js based documentation component
- Sliding header - Vue.js component representing sliding header (or two different headers)
- Modal Window - simple lightweight Modal Window Vue.js component
Troubleshooting
Any bugs, issues, feature and pull requests are welcome
Please use GitHub's issue reporter or send me an email
Contribution
Contribution is always welcome and recommended. Here is how:
- Fork the repository
- Clone to your machine
- Make your changes
- Create a pull request
License
@vuesence/cloud-sync-buttonpackage is freely distributable under the terms of the MIT license .
Recommend
-
9
How to disable Adobe Cloud Sync on macOS Adobe Creative Cloud really wants you to use its cloud storage service. Adobe doesn’t give you a way to turn it off. Here’s how to retake control and turn off Adobes Cloud Syn...
-
3
What did I build? A generator that creates all of the imagery and Markdown required to create a button like this (go on, click it, but be sure to come back after):
-
10
资料都放在百度云上,自己也是为了学习购买了一台 Gen10 Plus 虚拟化后部署了黑群晖。由于太多的资料放在了百度云上,弄了黑群晖后一直想把百度云上的资料在本地备份一份。周末无聊就就设置一下顺便把过程记录下,一共设置了两次一次掉坑里设置好了但是不同步文...
-
8
Skip the Cloud and Sync Your Files Anywhere With SyncThing By Odysseas Kourafalos Published 6 hours ago Do you want to sha...
-
4
Understanding Cloud Backup vs. Cloud Sync December 10, 2021 by Yev // 24 Comments
-
13
群晖 Cloud Sync 同步 OneDrive
-
4
You Don't Need a Fancy PC for Data Science: Use These Cloud Platforms!December 23rd 2021 new story6
-
13
<?xml encoding="utf-8" ??>Introduction Syncthing is a peer-to-peer continuous file synchronization application that allows you to keep files between servers updated in real-time. It offers a pri...
-
6
Without metadata, your fancy cloud data store is useless By Neil Raden
-
6
Aug 9th, 2023Potluck × Is TypeScript Fancy Duct Tape × Back Pain × Cloud Service Rate Limits👇 Download Show
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK