I'm using web components in production to help interoperability between 2012 era Handlebars/jQuery/Backbone and modern tools like React and Prosemirror.
I'm using web components in production to help interoperability between 2012 era Handlebars/jQuery/Backbone and modern tools like React and Prosemirror.
General browser support is good though. Debugging ShadyCSS in IE11 was a nightmare.
Reading between the lines here I'm getting the feel that this is actually, "Web Components work in every browser that people use to spend money." And I don't disagree. If you're doing something for work and being paid to do it then by all means use web components. The large number of people around the world you exclude weren't part of the demographic you were going to get money from.
But saying that it works in every browser that matters is wrong.
I think "every browser that matters" means, yes they don't work in IE or legacy Edge, and maybe don't work in Servo or Ladybird, but they work in Firefox, Edge, Chrome, Safari, Opera, etc.
I’m curious: does it work in Lynx[0]? I assume no because there’s no executed javascript, which is required to register the component as far as I know.
It’s worth stating the point in a different way. Even one person using such a browser “matters”, in a way, and it’s good to be kind when one can.
(Apologies if this comes off as harsh; however, it does seem to me that the other commenter has a point, at least in their second comment.)
0: https://en.wikipedia.org/wiki/Lynx_(web_browser)
----
“Virtually no one” does sound a lot like someone. Per this point of “browsers that matter”, many people will also say “accessibility matters”. Support of Lynx is a worthwhile goal in regard to web accessibility, in no small part because it does not execute javascript.
Note that Safari has opposed subclassing built-in components since the very beginning: https://github.com/WICG/webcomponents/issues/509#issuecommen...
Just a few of the reasons: https://github.com/WICG/webcomponents/issues/509#issuecommen...
However, there are now hundreds of millions of dollars of sunk costs, dozens and dozens of specs, unbelievable complexity that infects all other actually useful specs (like Scoped CSS which cannot proceed properly because effing Shadow DOM), extreme zealotry and complete unwillingness to engage with anyone even mildly critical of web components.
All this results in a strong desire to keep going and promoting this even if no one can even say what the "done" state is for them. Or what is the actual goal, since that goal changes every few months.
[1] https://twitter.com/Rich_Harris/status/1198332398561353728 None of these have any satisfactory solution (for some not even on the horizon)
[2] Even the people pushing this stuff realise how many issues they have: https://w3c.github.io/webcomponents-cg/2022.html See how many of those are not even close to even being discussed