diff --git a/src/App.vue b/src/App.vue index 754dea0..69a9654 100644 --- a/src/App.vue +++ b/src/App.vue @@ -45,7 +45,17 @@ :thickness="10" :empty-thickness="10" line-mode="out" - :loader="{ lineMode: 'in ', opacity: 1 }" + :color="gradient" + :loader="{ + lineMode: 'in ', + opacity: 1, + color: { + colors: [ + { color: 'yellow', offset: '0' }, + { color: 'red', offset: '100' }, + ], + }, + }" > @@ -58,7 +68,6 @@ half :no-data="noData" :determinate="determinate" - :loader="{ thickness: 40, color: 'red' }" > @@ -37,6 +32,12 @@ export default { }, }, computed: { + computedOptions() { + return { + ...this.options, + uid: this.uid, + }; + }, circleType() { return this.options.half ? "half-circle-progress" : "circle-progress"; }, @@ -55,6 +56,9 @@ export default { isLoaderColorGradient() { return Array.isArray(this.options.loader.color.colors); }, + uid() { + return this.$.uid; + }, }, }; diff --git a/src/components/Circle/CircleLoader.vue b/src/components/Circle/CircleLoader.vue index 8904e72..3609a79 100644 --- a/src/components/Circle/CircleLoader.vue +++ b/src/components/Circle/CircleLoader.vue @@ -39,7 +39,7 @@ export default { }, loaderColor() { return Array.isArray(this.options.loader.color.colors) - ? `url(#ep-loader-gradient-${this.options.id})` + ? `url(#ep-loader-gradient-${this.options.uid})` : this.options.color; }, }, diff --git a/src/components/Circle/HalfCircleLoader.vue b/src/components/Circle/HalfCircleLoader.vue index 0854652..98ab1b0 100644 --- a/src/components/Circle/HalfCircleLoader.vue +++ b/src/components/Circle/HalfCircleLoader.vue @@ -40,7 +40,7 @@ export default { }, halfLoaderColor() { return Array.isArray(this.options.loader.color.colors) - ? `url(#ep-loader-gradient-${this.options.id})` + ? `url(#ep-loader-gradient-${this.options.uid})` : this.options.color; }, }, diff --git a/src/components/Circle/circleMixin.js b/src/components/Circle/circleMixin.js index 71e7514..9a5f8dc 100644 --- a/src/components/Circle/circleMixin.js +++ b/src/components/Circle/circleMixin.js @@ -55,22 +55,22 @@ export default { color() { return Array.isArray(this.options.color.colors) - ? `url(#ep-progress-gradient-${this.options.id})` + ? `url(#ep-progress-gradient-${this.options.uid})` : this.options.color; }, emptyColor() { return Array.isArray(this.options.emptyColor.colors) - ? `url(#ep-empty-gradient-${this.options.id})` + ? `url(#ep-empty-gradient-${this.options.uid})` : this.options.emptyColor; }, colorFill() { return Array.isArray(this.options.colorFill.colors) - ? `url(#ep-progress-fill-gradient-${this.options.id})` + ? `url(#ep-progress-fill-gradient-${this.options.uid})` : this.options.colorFill; }, emptyColorFill() { return Array.isArray(this.options.emptyColorFill.colors) - ? `url(#ep-empty-fill-gradient-${this.options.id})` + ? `url(#ep-empty-fill-gradient-${this.options.uid})` : this.options.emptyColorFill; }, diff --git a/src/components/Gradient.vue b/src/components/Gradient.vue index 6e27688..205e681 100644 --- a/src/components/Gradient.vue +++ b/src/components/Gradient.vue @@ -1,7 +1,7 @@