mirror of
https://github.com/youzan/vant.git
synced 2025-10-22 11:54:02 +00:00
Circle
Install
import Vue from 'vue';
import { Circle } from 'vant';
Vue.use(Circle);
Usage
Basic Usage
<van-circle
v-model="currentRate"
:rate="30"
:speed="100"
:text="text"
/>
export default {
data() {
return {
currentRate: 0
};
},
computed: {
text() {
return this.currentRate.toFixed(0) + '%'
}
}
};
Custom Width
<van-circle
v-model="currentRate"
:rate="rate"
:stroke-width="60"
text="Custom Width"
/>
Custom Color
<van-circle
v-model="currentRate"
:rate="rate"
layer-color="#ebedf0"
text="Custom Color"
/>
Gradient
<van-circle
v-model="currentRate"
:rate="rate"
:color="gradientColor"
text="Gradient"
/>
export default {
data() {
return {
currentRate: 0,
gradientColor: {
'0%': '#3fecff',
'100%': '#6149f6'
}
};
}
};
Counter Clockwise
<van-circle
v-model="currentRate"
:rate="rate"
:clockwise="false"
text="Counter Clockwise"
/>
Custom Size
<van-circle
v-model="currentRate"
:rate="rate"
size="120px"
text="Custom Size"
/>
API
Props
Attribute | Description | Type | Default | Version |
---|---|---|---|---|
v-model | Current rate | number | - | - |
rate | Target rate | number | 100 |
- |
size | Circle size | string | number | 100px |
- |
color | Progress color, passing object to render gradient | string | object | #1989fa |
2.1.4 |
layer-color | Layer color | string | #fff |
- |
fill | Fill color | string | none |
- |
speed | Animate speed(rate/s) | number | 0 |
- |
text | Text | string | - | - |
stroke-width | Stroke width | number | 40 |
- |
stroke-linecap | Stroke linecap,can be set to sqaure butt |
string | round |
2.2.15 |
clockwise | Whether to be clockwise | boolean | true |
- |
Slots
Name | Description |
---|---|
default | custom text content |