diff --git a/packages/components/dropdown/__tests__/dropdown.spec.ts b/packages/components/dropdown/__tests__/dropdown.spec.ts index 4d56ff2ee5..0e508355e8 100644 --- a/packages/components/dropdown/__tests__/dropdown.spec.ts +++ b/packages/components/dropdown/__tests__/dropdown.spec.ts @@ -487,4 +487,28 @@ describe('Dropdown', () => { expect(popperElement.classList.contains('custom-popper-class')).toBe(true) }) + + test('custom attributes for dropdown items', async () => { + const wrapper = _mount( + ` + + + + `, + () => ({}) + ) + await nextTick() + expect( + wrapper + .findComponent({ + name: 'DropdownItemImpl', + }) + .find('.el-dropdown-menu__item') + .element.getAttribute('data-custom-attribute') + ).toBe('hello') + }) }) diff --git a/packages/components/dropdown/src/dropdown-item-impl.vue b/packages/components/dropdown/src/dropdown-item-impl.vue index 90e89b8d25..48505bf9fa 100644 --- a/packages/components/dropdown/src/dropdown-item-impl.vue +++ b/packages/components/dropdown/src/dropdown-item-impl.vue @@ -1,8 +1,12 @@