Web components can be used in dioxus like normal html elements, and props are simply quoted if they aren't known to dioxus. Slots can be used as expected, although the slot attribute isn't known to dioxus and must also be quoted.
But some web components also have custom events and/or methods defined. Currently, I am assigning the components unique id's, get the Element reference using web-sys, and add an event listener to that element with gloo. But that is very annoying and doesn't integrate well with dioxus' EventHandler, forcing wrapper components to use prop names not starting with on for the callbacks and requiring a custom static callback type.
I have noticed, that it is also possible to add a normal dioxus oninput listener to a web component, but is that really the same event as the component's custom input event? And even if so, the event data cannot be accessed.
As for web component methods, after obtaining a web_sys::Element instance as described above, it is possible to cast to a different type defined with wasm-bindgen, that has the methods. But that's still pretty cumbersome. And also how would a dioxus wrapper component expose these methods to users?
Also all this only works on dioxus-web (as I make heavy use of wasm-bindgen), which I don't think would have to be the case, but isn't a problem with me rn.