+
+"
@@ -282,12 +282,12 @@ exports[`popup wrapper 2`] = `
appear="true"
persisted="false"
css="true"
- role="button"
- tabindex="0"
>
diff --git a/packages/vant/src/coupon-list/test/__snapshots__/demo.spec.ts.snap b/packages/vant/src/coupon-list/test/__snapshots__/demo.spec.ts.snap
index c5c800cd2..a4370cbb2 100644
--- a/packages/vant/src/coupon-list/test/__snapshots__/demo.spec.ts.snap
+++ b/packages/vant/src/coupon-list/test/__snapshots__/demo.spec.ts.snap
@@ -25,8 +25,6 @@ exports[`should render demo and match snapshot 1`] = `
appear="true"
persisted="false"
css="true"
- role="button"
- tabindex="0"
>
@@ -102,8 +102,6 @@ exports[`click option 1`] = `
appear="true"
persisted="false"
css="true"
- role="button"
- tabindex="0"
>
@@ -219,8 +217,6 @@ exports[`close-on-click-outside 1`] = `
appear="true"
persisted="false"
css="true"
- role="button"
- tabindex="0"
>
@@ -452,8 +442,6 @@ exports[`direction up 2`] = `
appear="true"
persisted="false"
css="true"
- role="button"
- tabindex="0"
>
@@ -569,8 +557,6 @@ exports[`disable close-on-click-outside 1`] = `
appear="true"
persisted="false"
css="true"
- role="button"
- tabindex="0"
>
@@ -730,8 +714,6 @@ exports[`render option icon 1`] = `
appear="true"
persisted="false"
css="true"
- role="button"
- tabindex="0"
>
@@ -847,8 +829,6 @@ exports[`show dropdown item 1`] = `
appear="true"
persisted="false"
css="true"
- role="button"
- tabindex="0"
>
@@ -964,12 +944,12 @@ exports[`show dropdown item 2`] = `
appear="true"
persisted="false"
css="true"
- role="button"
- tabindex="0"
>
@@ -1060,12 +1040,12 @@ exports[`show dropdown item 3`] = `
appear="true"
persisted="false"
css="true"
- role="button"
- tabindex="0"
>
@@ -1123,12 +1103,12 @@ exports[`show dropdown item 3`] = `
appear="true"
persisted="false"
css="true"
- role="button"
- tabindex="0"
>
@@ -1219,8 +1199,6 @@ exports[`title prop 1`] = `
appear="true"
persisted="false"
css="true"
- role="button"
- tabindex="0"
>
-
+
-
+
;
export default defineComponent({
name,
+ inheritAttrs: false,
+
props: overlayProps,
- setup(props, { slots }) {
+ setup(props, { attrs, slots }) {
const root = ref();
const lazyRender = useLazyRender(() => props.show || !props.lazyRender);
@@ -71,6 +73,7 @@ export default defineComponent({
ref={root}
style={style}
class={[bem(), props.className]}
+ {...attrs}
>
{slots.default?.()}
diff --git a/packages/vant/src/overlay/test/index.spec.tsx b/packages/vant/src/overlay/test/index.spec.tsx
index 597011c88..8cf082c88 100644
--- a/packages/vant/src/overlay/test/index.spec.tsx
+++ b/packages/vant/src/overlay/test/index.spec.tsx
@@ -116,3 +116,19 @@ test('should allow to use the teleport prop', () => {
expect(root.querySelector('.van-overlay')).toBeTruthy();
});
+
+test('should inherit attrs when using teleport prop', async () => {
+ const root = document.createElement('div');
+ mount(Overlay, {
+ props: {
+ show: true,
+ teleport: root,
+ },
+ attrs: {
+ class: 'foo',
+ },
+ });
+
+ const overlay = root.querySelector('.van-overlay');
+ expect(overlay?.classList.contains('foo')).toBeTruthy();
+});
diff --git a/packages/vant/src/picker/test/__snapshots__/demo.spec.ts.snap b/packages/vant/src/picker/test/__snapshots__/demo.spec.ts.snap
index ef20ffa4b..4d035071e 100644
--- a/packages/vant/src/picker/test/__snapshots__/demo.spec.ts.snap
+++ b/packages/vant/src/picker/test/__snapshots__/demo.spec.ts.snap
@@ -130,8 +130,6 @@ exports[`should render demo and match snapshot 1`] = `
appear="true"
persisted="false"
css="true"
- role="button"
- tabindex="0"
>
-
+
-
+
Custom Overlay Content
diff --git a/packages/vant/src/share-sheet/test/__snapshots__/demo.spec.ts.snap b/packages/vant/src/share-sheet/test/__snapshots__/demo.spec.ts.snap
index d77c0d6a0..b427e7ac9 100644
--- a/packages/vant/src/share-sheet/test/__snapshots__/demo.spec.ts.snap
+++ b/packages/vant/src/share-sheet/test/__snapshots__/demo.spec.ts.snap
@@ -20,8 +20,6 @@ exports[`should render demo and match snapshot 1`] = `
appear="true"
persisted="false"
css="true"
- role="button"
- tabindex="0"
>
-