feat: Slider组件min值允许负数

 Closes: #266
This commit is contained in:
Jasper 2024-04-28 16:43:32 +08:00 committed by 不如摸鱼去
parent 1802cd4d8d
commit 9e7c8d33eb
3 changed files with 18 additions and 24 deletions

View File

@ -56,13 +56,13 @@ const value = ref<number[]>([10, 30])
## Attributes
| 参数 | 说明 | 类型 | 可选值 | 默认值 | 最低版本 |
|-----|------|-----|-------|-------|--------|
|-----|---------------------------|-----|-------|-------|--------|
| v-model | 滑块值如果为array则为双向滑块 | number / array | - | - | - |
| hide-min-max | 是否显示左右的最大最小值 | boolean | - | false | - |
| hide-label | 是否显示当前滑块值 | boolean | - | false | - |
| disabled | 是否禁用 | boolean | - | false | - |
| max | 最大值 | number | - | 100 | - |
| min | 最小值 | number | - | 0 | - |
| min | 最小值,允许负数`($LOWEST_VERSION$)` | number | - | 0 | - |
| step | 步进值 | number | - | 1 | - |
| active-color | 进度条激活背景颜色 | string | - | linear-gradient(315deg, rgba(81,124,240,1) 0%,rgba(118,158,245,1) 100%) | - |
| inactive-color | 进度条未激活背景颜色 | string | - | #e5e5e5 | - |

View File

@ -13,7 +13,7 @@
<wd-slider v-model="value1" />
</demo-block>
<demo-block title="指定选择范围">
<wd-slider v-model="value2" :min="4" :max="1000" />
<wd-slider v-model="value2" :min="-10" :max="10" />
</demo-block>
<demo-block title="指定步长">
<wd-slider v-model="value4" hide-min-max :step="10" />

View File

@ -95,10 +95,7 @@ const stepValue = ref<number>(1) // 步长
watch(
() => props.max,
(newValue) => {
if (newValue < 0) {
maxValue.value = 100
console.warn('[wot design] warning(wd-slider): max value must be greater than 0')
} else if (newValue <= props.min) {
if (newValue <= props.min) {
maxValue.value = props.min //
minValue.value = newValue
console.warn('[wot design] warning(wd-slider): max value must be greater than min value')
@ -106,16 +103,13 @@ watch(
maxValue.value = newValue //
}
},
{ deep: true, immediate: true }
{ immediate: true }
)
watch(
() => props.min,
(newValue) => {
if (newValue < 0) {
minValue.value = 0
console.warn('[wot design] warning(wd-slider): min value must be greater than 0')
} else if (newValue >= props.max) {
if (newValue >= props.max) {
minValue.value = props.max //
maxValue.value = newValue
console.warn('[wot design] warning(wd-slider): min value must be less than max value')
@ -123,7 +117,7 @@ watch(
minValue.value = newValue //
}
},
{ deep: true, immediate: true }
{ immediate: true }
)
watch(
@ -134,7 +128,7 @@ watch(
console.warn('[wot design] warning(wd-slider): step must be greater than 0')
}
},
{ deep: true, immediate: true }
{ immediate: true }
)
watch(