Simple and lightweight (~590 bytes gzip) progress bar component; for ⚛️ Preact
$ npm install --save preact-progress
❗ Pro Tip: Use Yarn to install dependencies 3x faster than NPM!
<script src="https://unpkg.com/[email protected]/dist/preact-progress.min.js"></script>
Provide a value
; everything else is optional.
import { h } from 'preact';
import Progress from 'preact-progress';
onChange = (ctx, val) => console.log(`${val}% complete`);
onComplete = ctx => {ctx.base.style.opacity = 0};
<Progress
id="loader" className="loader"
value={ 16.3 } height="3px" color="#6cc644"
onChange={ onChange }
onComplete={ onComplete }
/>
Type: Number
Default: 0
The current progress; between 0 and 100. Mapped to a style:width
percentage.
Type: Function
The callback function when progress bar mounts. Receives the current Progress
component as its first argument & the current value
as its second argument.
Type: Function
The callback function whenever the progress value updates. Receives the current Progress
component as its first argument & the current value
as its second argument.
Type: Function
The callback function when progress bar has reached 100%. Receives the current Progress
component as its only argument.
Type: String
Default: 4px
The height of the animated progress bar.
Type: String
Default: black
The color of the animated progress bar.
Type: String
Default: none
The id
attribute to pass down.
Type: String
Default: none
The className
attribute to pass down. Added to the wrapper element.
MIT © Luke Edwards