| If you can't use Web Components (Polymer) then Angular is the next best thing. I think you should really try to use Web Components though if you can get away with it. IMHO Angular is overly complicated once you try to dig in, for example to make your own HTML elements. Building custom elements with Web Components/Polymer is the next step, along with promoting web components/polymer and working on getting compatibility in user's browsers. People say its not ready for mainstream, which is true. _However_, if we all start taking Polymer/Web Components seriously, pretty quickly it _will_ be ready, i.e. it will work in new releases of Firefox, Chrome and probably Safari. And even IE 10 and 11. We just need people to start seriously trying to take advantage of it, patching things and pushing for compatibility/stability/adoption. And someone might say something like "I think you are confused about what Angular and Web Components do.. blah Angular is going to take advantage of Web Components in the near future". So let me save you the lecture. I have used Angular in 3 or 4 projects. I know what it does. I know it is going to use Web Components in the future. But like I said, its too complicated. And most, if not all, of the things that you would do with Angular with/without using custom elements, you can take advantage of Polymer/Web Components features to do. And it will be much simpler to code and maintain, and not particular to any overall framework. So as far as I'm concerned Angular is superfluous at this point, and a liability, if I am not constrained by immediately shitty browser realities. If there is something that Angular does that can't be implemented with Web Components/Polymer, please let me know. |
Not soon though, that is up to browser makers.
Angular is close enough tot he general idea though, that I think it's proving the approach is valid to an entire generation of devs. Devs who would never have known about web components if angular wasn't legitimising it.
[1] https://docs.google.com/presentation/d/1Gv-dvU-yy6WY7SiNJ9QR...