dotnet/aspnetcore

[Blazor] InputText binding is not supported well with Shadow DOM elements

Open

#60,885 opened on Mar 11, 2025

View on GitHub
 (9 comments) (0 reactions) (0 assignees)C# (10,653 forks)batch import
area-blazorbughelp wanted

Repository metrics

Stars
 (37,933 stars)
PR merge metrics
 (Avg merge 14d 3h) (205 merged PRs in 30d)

Description

Is there an existing issue for this?

  • I have searched the existing issues

Describe the bug

I use a web component library which create input elements within shadow DOM (shadowRoot property). Let's call it <super-input> I overrided InputText content with .

When using @bind on the value with oninput event, it doesn't work as well as the InputText or html input element. Characters could be sent weirdly depending the connection, and the use or websocket or no, and specially when the typing is fast.

I already digged into the problem and found a fix on my branch : https://github.com/Poppyto/aspnetcore/tree/poppyto/use-shadow-input-with-binding

The idea is to relay on event.composedPath().find(_=>true) instead of event.target when dealing with some events.

I would be happy to discuss about this bug

Expected Behavior

The typing must be smooth

Steps To Reproduce

No response

Exceptions (if any)

No response

.NET Version

8

Anything else?

No response

Contributor guide