feat(Rate): 当使用 readonly 和 allow-half 时支持 modelValue 设置小数 (#8528)
* feat(Rate): 当使用readonly和allow-half时支持modelValue设置小数 * docs(Rate): 完善文档 * docs(Rate): update snapshot * docs(Rate): add description of decimal value Co-authored-by: neverland <chenjiahan@buaa.edu.cn>
This commit is contained in:
@@ -225,7 +225,7 @@ exports[`should render demo and match snapshot 1`] = `
|
||||
>
|
||||
</i>
|
||||
<i class="van-badge__wrapper van-icon van-icon-star van-rate__icon van-rate__icon--half van-rate__icon--full"
|
||||
style="font-size: 25px;"
|
||||
style="font-size: 25px; width: 1em;"
|
||||
data-score="0.5"
|
||||
>
|
||||
</i>
|
||||
@@ -243,7 +243,7 @@ exports[`should render demo and match snapshot 1`] = `
|
||||
>
|
||||
</i>
|
||||
<i class="van-badge__wrapper van-icon van-icon-star van-rate__icon van-rate__icon--half van-rate__icon--full"
|
||||
style="font-size: 25px;"
|
||||
style="font-size: 25px; width: 1em;"
|
||||
data-score="1.5"
|
||||
>
|
||||
</i>
|
||||
@@ -261,7 +261,7 @@ exports[`should render demo and match snapshot 1`] = `
|
||||
>
|
||||
</i>
|
||||
<i class="van-badge__wrapper van-icon van-icon-star van-rate__icon van-rate__icon--half van-rate__icon--full"
|
||||
style="font-size: 25px;"
|
||||
style="font-size: 25px; width: 0.5em;"
|
||||
data-score="2.5"
|
||||
>
|
||||
</i>
|
||||
@@ -279,7 +279,7 @@ exports[`should render demo and match snapshot 1`] = `
|
||||
>
|
||||
</i>
|
||||
<i class="van-badge__wrapper van-icon van-icon-star van-rate__icon van-rate__icon--half"
|
||||
style="color: rgb(238, 238, 238); font-size: 25px;"
|
||||
style="color: rgb(238, 238, 238); font-size: 25px; width: 0em;"
|
||||
data-score="3.5"
|
||||
>
|
||||
</i>
|
||||
@@ -297,7 +297,7 @@ exports[`should render demo and match snapshot 1`] = `
|
||||
>
|
||||
</i>
|
||||
<i class="van-badge__wrapper van-icon van-icon-star van-rate__icon van-rate__icon--half"
|
||||
style="color: rgb(238, 238, 238); font-size: 25px;"
|
||||
style="color: rgb(238, 238, 238); font-size: 25px; width: 0em;"
|
||||
data-score="4.5"
|
||||
>
|
||||
</i>
|
||||
@@ -517,6 +517,98 @@ exports[`should render demo and match snapshot 1`] = `
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div role="radiogroup"
|
||||
class="van-rate van-rate--readonly"
|
||||
tabindex="0"
|
||||
>
|
||||
<div role="radio"
|
||||
class="van-rate__item"
|
||||
tabindex="0"
|
||||
aria-setsize="5"
|
||||
aria-posinset="1"
|
||||
aria-checked="true"
|
||||
>
|
||||
<i class="van-badge__wrapper van-icon van-icon-star van-rate__icon van-rate__icon--full"
|
||||
data-score="1"
|
||||
>
|
||||
</i>
|
||||
<i class="van-badge__wrapper van-icon van-icon-star van-rate__icon van-rate__icon--half van-rate__icon--full"
|
||||
style="width: 1em;"
|
||||
data-score="0.5"
|
||||
>
|
||||
</i>
|
||||
</div>
|
||||
<div role="radio"
|
||||
class="van-rate__item"
|
||||
tabindex="0"
|
||||
aria-setsize="5"
|
||||
aria-posinset="2"
|
||||
aria-checked="true"
|
||||
>
|
||||
<i class="van-badge__wrapper van-icon van-icon-star van-rate__icon van-rate__icon--full"
|
||||
data-score="2"
|
||||
>
|
||||
</i>
|
||||
<i class="van-badge__wrapper van-icon van-icon-star van-rate__icon van-rate__icon--half van-rate__icon--full"
|
||||
style="width: 1em;"
|
||||
data-score="1.5"
|
||||
>
|
||||
</i>
|
||||
</div>
|
||||
<div role="radio"
|
||||
class="van-rate__item"
|
||||
tabindex="0"
|
||||
aria-setsize="5"
|
||||
aria-posinset="3"
|
||||
aria-checked="true"
|
||||
>
|
||||
<i class="van-badge__wrapper van-icon van-icon-star van-rate__icon van-rate__icon--full"
|
||||
data-score="3"
|
||||
>
|
||||
</i>
|
||||
<i class="van-badge__wrapper van-icon van-icon-star van-rate__icon van-rate__icon--half van-rate__icon--full"
|
||||
style="width: 1em;"
|
||||
data-score="2.5"
|
||||
>
|
||||
</i>
|
||||
</div>
|
||||
<div role="radio"
|
||||
class="van-rate__item"
|
||||
tabindex="0"
|
||||
aria-setsize="5"
|
||||
aria-posinset="4"
|
||||
aria-checked="true"
|
||||
>
|
||||
<i class="van-badge__wrapper van-icon van-icon-star-o van-rate__icon"
|
||||
data-score="4"
|
||||
>
|
||||
</i>
|
||||
<i class="van-badge__wrapper van-icon van-icon-star van-rate__icon van-rate__icon--half van-rate__icon--full"
|
||||
style="width: 0.3em;"
|
||||
data-score="3.5"
|
||||
>
|
||||
</i>
|
||||
</div>
|
||||
<div role="radio"
|
||||
class="van-rate__item"
|
||||
tabindex="0"
|
||||
aria-setsize="5"
|
||||
aria-posinset="5"
|
||||
aria-checked="false"
|
||||
>
|
||||
<i class="van-badge__wrapper van-icon van-icon-star-o van-rate__icon"
|
||||
data-score="5"
|
||||
>
|
||||
</i>
|
||||
<i class="van-badge__wrapper van-icon van-icon-star-o van-rate__icon van-rate__icon--half"
|
||||
style="width: 0em;"
|
||||
data-score="4.5"
|
||||
>
|
||||
</i>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<div role="radiogroup"
|
||||
class="van-rate"
|
||||
|
||||
@@ -127,3 +127,16 @@ test('should not emit change event when untouchable rate is touchmoved', () => {
|
||||
triggerDrag(wrapper, 100, 0);
|
||||
expect(wrapper.emitted('change')).toBeFalsy();
|
||||
});
|
||||
|
||||
test('should get decimal when using allow-half and readonly prop', () => {
|
||||
const wrapper = mount(Rate, {
|
||||
props: {
|
||||
allowHalf: true,
|
||||
readonly: true,
|
||||
modelValue: 3.3,
|
||||
},
|
||||
});
|
||||
|
||||
const item4 = wrapper.findAll('.van-rate__icon--half')[3];
|
||||
expect(item4.style.width).toEqual('0.3em');
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user