fix(Pagination): change event not work (#10018)
* fix(Pagination): change event not work * chore: update pnpm lock
This commit is contained in:
@@ -135,7 +135,7 @@ export default defineComponent({
|
||||
<button
|
||||
type="button"
|
||||
disabled={disabled}
|
||||
onClick={() => updateModelValue(modelValue - 1)}
|
||||
onClick={() => updateModelValue(modelValue - 1, true)}
|
||||
>
|
||||
{slot ? slot() : props.prevText || t('prev')}
|
||||
</button>
|
||||
@@ -157,7 +157,7 @@ export default defineComponent({
|
||||
<button
|
||||
type="button"
|
||||
disabled={disabled}
|
||||
onClick={() => updateModelValue(modelValue + 1)}
|
||||
onClick={() => updateModelValue(modelValue + 1, true)}
|
||||
>
|
||||
{slot ? slot() : props.nextText || t('next')}
|
||||
</button>
|
||||
@@ -176,7 +176,7 @@ export default defineComponent({
|
||||
<button
|
||||
type="button"
|
||||
aria-current={page.active || undefined}
|
||||
onClick={() => updateModelValue(page.number)}
|
||||
onClick={() => updateModelValue(page.number, true)}
|
||||
>
|
||||
{slots.page ? slots.page(page) : page.text}
|
||||
</button>
|
||||
|
||||
@@ -29,3 +29,26 @@ test('should render page slot correctly', () => {
|
||||
|
||||
expect(wrapper.html()).toMatchSnapshot();
|
||||
});
|
||||
|
||||
test('should emit change event after the page is changed', async () => {
|
||||
const wrapper = mount(Pagination, {
|
||||
props: {
|
||||
modelValue: 1,
|
||||
totalItems: 50,
|
||||
'onUpdate:modelValue': (modelValue: number) => {
|
||||
wrapper.setProps({ modelValue });
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
await wrapper
|
||||
.findAll('.van-pagination__item--page button')[2]
|
||||
.trigger('click');
|
||||
expect(wrapper.emitted('change')).toEqual([[3]]);
|
||||
|
||||
await wrapper.find('.van-pagination__item--prev button').trigger('click');
|
||||
expect(wrapper.emitted('change')).toEqual([[3], [2]]);
|
||||
|
||||
await wrapper.find('.van-pagination__item--next button').trigger('click');
|
||||
expect(wrapper.emitted('change')).toEqual([[3], [2], [3]]);
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user