4 ms·
I would suggest Polymer. Web Standards based - has comprehensive library of elements and polymer itself is a tiny library. I've had very good experience with i
by ergo14 10y ago
I would suggest Polymer. Web Standards based - has comprehensive library of elements and polymer itself is a tiny library.
I've had very good experience with it - if you know html/JS you will feel at home.
As for being "feature complete" - it has probably best implementation of material design elements and you can find a ton of other element on https://www.webcomponents.org/ https://www.webcomponents.org/.
It is also interoperable with other solutions like jquery/angular/aurelia and others.
- etimberg 10y agoPolymer works very well for it's use case, but it is very difficult to make it work with tools like webpack. It ends up requiring what feels like a lot of hacks. SystemJS seems to be a bit easier to work with since there is a plugin for requiring the necessary HTML files. Polymer 2.0 looks to be much better.
- Touche 10y agoI probably wouldn't let your build tool choice influence the UI framework choice. Other way around, actually. Polymer has an excellent build tool of its own.
- lima 10y agoCan I use Polymer components with Vue.js?
- ergo14 10y agoPolymer elements are "normal" elements so yeah you should be able to do so unless vue does something weird. https://github.com/vuejs/vue-element https://github.com/vuejs/vue-element - this might give some hints.
- netforay 10y agoNo you can not. Telling from experience. Here is the reason.. Vue is optimized to create/update your DOM elements based on data. Polymer does create a DOM node and internally implement lot os JS to create their own shadow DOM. Each Polyer component can have different life cycle (for Example and Table Component can actually creat TR,TD elements after some time of creating your Custom Table Polymer component). And Vue does not know this. Once the Dom for parent tag is created, Vue assumes its work is done. And if data change mean while it will remove it or update it. But Life Cycle of prevously create Polyermer component may still in progress...and you will get lot of exceptions in console. How to burn your fingers and see this problem..? Try to use OnsenUI Polymer components with Vue.JS. Mainly any List and Table tags with dynamic children bound to data.
- Touche 10y agoI don't understand your point. Can Vue update `<input>`? If so it should be able to update any custom element.
- netforay 10y agoYes, that is what I thought. Until I started using some more wired Polymer components. Not all components get problems though.
- ergo14 10y agoWeird, vaadin made a compat layer for polymer/angular and it works well. I would expect vuejs would also work reasonably well with proper compat. shim, there is one for vue 1.x.
- lima 10y agoThanks. It sounds like it would get easier with Polymer 2.0? https://www.polymer-project.org/2.0/docs/about_20 https://www.polymer-project.org/2.0/docs/about_20
- netforay 10y agoPolymer is built for the world without Vue.js or React. They are slow and heavy weight compared to very very optimized DOM operations done by Vue.js or React. I think the time for Polymer is gone, and it is better to forget that it exists.
- Touche 10y agoI mean, custom elements just shipped in Chrome a few months ago and are shipping in Safari soon. Firefox is in active development. So a bit too soon to say a technology's time has passed when it hasn't really had a chance up until this point.
- tdumitrescu 10y agoChrome has had Custom Elements since v33, almost 3 years ago. Maybe you're thinking of the latest (v1) iteration of the spec? http://caniuse.com/#feat=custom-elements http://caniuse.com/#feat=custom-elements
- Touche 10y agoYep, v0 doesn't count, it's a legacy Chrome-only feature for now.
- floatboth 10y agoThe performance benefits of virtual DOM / DOM diffing are way, way overrated IMO. You can use that stuff with Polymer where you really need it, but I just use plain Polymer for everything and it's awesome. I think the time for React is gone :-P
- qz_ 10y agoJesus, already? :-P
- ergo14 10y agoInteresting - the benchmarks prove otherwise - it is as fast as other new solutions. So i think you never actually used it in production at any scale. If angular 1.5 was OK for thousands of devs over recent years then Polymer that is comparable to ng2 or react is more then enough. Not to mention that for a world without polymer - some of biggest enterprises in the world are betting on it (and I don't mean just google here).