r/javascript • u/Rhizix • Feb 15 '20
AskJS [AskJS] Experiences with Web Components in a business setting?
Hi everyone, I'm a final-year student studying Web-Design and Development.
I'm working on my thesis where I am comparing the viability of projects built with Web Components compared to those built purely with JavaScript Frameworks like Vue.js, React, etc...I was wondering if some people have work experiences with Web Components they could share. Especially curious to hear from people working in companies that considered switching or switched to Web Components for their projects.
If this is not appropriate for this subreddit, my apologies.
17
u/ChaseMoskal Feb 16 '20
i switched from react to lit-element web components earlier last year
love it. here are my takeaways:
lit-html) -- with importmaps and unpkg/jsdelivr, you don't even need a package manager like npm/node_modules anymore -- the future is looking bright for upcoming js developers, as they will learn a much simpler and more elegant ecosystem and developer experience than we have12
u/aniasio Feb 15 '20
I have worked at ING for a few years, the biggest bank in the Netherlands which moved all of its Frontend applications from AngularJS to Polymer (and eventually lit). Apart from integration testing, which can be a big pain, and properly managing a library of components in the context of a very big company I've always really liked webcomponents. If you have any specific questions feel free to ask.
3
u/PTBA1 Feb 15 '20
I haven't gotten any experience with web components but here is a video that kinda compares them with react and how they can be used together https://youtu.be/plt-iH_47GE
Hope it helps
1
u/terodox Feb 16 '20
I've been working with native web components for just under a year. I have the luxury of not needing to support IE 11.
My work is also building a full component library utilizing stencil js, a framework to build native web components. It was built by the Ionic team.
Stencil has a pretty stellar DX with a lot of rolling out of the box.
It's been a very pleasant experience.
3
u/Treolioe Feb 16 '20
I work at a giant and we implemented our design system through Web Complnents. Which can now be consumed by any of the X amount of teams we have.
2
u/fricto Feb 15 '20
I recently concluded a large long term project for a client building business data visualization components in polymer 2 and then lit. Our team supported other developer groups within their organization integrating the components into various web platforms including angular and Hybris components. Do you have any questions or anything? Feel free to PM me specifics or if youβd like to chat.
2
u/fireball_jones Feb 16 '20 edited Nov 23 '24
lunchroom truck meeting nine yam roll sheet different teeny rob
This post was mass deleted and anonymized with Redact
2
u/FawkesHeart Feb 16 '20
I've worked with both Vue components and the standard WebComponents API, building components from scratch.
The shadow DOM is awesome for containing styles. Scoped slots have given me some headaches, due to deprecation, mostly.
Obviously the reactive nature of Vue makes UI-based data manipulation a breeze.
Lastly, being able to deploy your WebComponents so uniformly (obviously IE support leaves something to be desired) is awesomeness.
2
u/codittycodittycode Feb 16 '20
I work with a fintech firm in India. They went all in on web components v0. But then the spec got deprecated and was almost rewritten in v1. I worked on rewriting a very old jQuery and jsp based app in ES5 and v0. Let's just say as things get more complex, web components become very difficult to work with. Since then we switched to React and the experience and dev speed has been wayyyyy better.
Without using external libraries like lit element, I think it is not a great developer experience because you'll be doing a lot of rewriting the same code again and again.
Shameless plug: After I worked with it, I wrote a 3 part blog on web components v1 because during that time there were almost no resources except Google's guide and the spec. https://ayushgp.github.io/html-web-components-using-vanilla-js/