21 ms·
I usually have a terrible UX with Angular websites, I don't know if the problem is Angular itself or the developers, but these are some of the problems I usuall
by pera 12y ago
I usually have a terrible UX with Angular websites, I don't know if the problem is Angular itself or the developers, but these are some of the problems I usually experience:
-No HTML hyperlinks. This means that I can not open pages in new tabs, which it's very frustrating.
-Slow loading times. Static websites are much faster. Even non-cached server-side dynamically generated websites are faster.
-High CPU usage. To be fare my computer (1.4ghz c2s) is almost 5 years old, but using 100% to render a very simple "About us" page is ridiculous.
-Broken style when using some add-ons. This _only_ happens with Angular.
- sosuke 12y agoNo HTML hyperlinks is an annoyance, especially since part of Angular is being in the DOM, but that is something that can be handled, the lazy method is to just not do it. I guess that is something I like in a framework or library, that the laziest method it promotes does the most work by default.
- snlacks 12y agoThe point of a framework though is to remove the boilerplate, best-practices should be part of a front end frame work's default settings. The problem with Angular's popularity is that it's often used for bad purposes (including in their own guide as an e-commerce tutorial). Angular's strengths, solely IMO, play up to large single page apps comprised of many small angular apps, apps that don't use hyperlinks and aren't driven by sharing or SEO. There's a lot of weird choices in Angular, but it's not broken though, and enterprise will still use it because it is backed by Google, only a few frameworks are backed by big companies, and it's less of a departure than the other frameworks. React and Backbone aren't frameworks in the sense that businesses need frameworks, where repetitive decisions have conventions. I just wish we'd stop trying to wedge these frameworks in to the wrong types of projects. Angular is great, for our authwalled web apps, from my use. I bet it would be for other people with the same needs, and wouldn't be for people who are trying to build marketing sites, blogs, or e-commerce. Edit: stray keystroke.
- nemothekid 12y agoI'm working on a very large, single page app in Angular. I use HTML links everywhere, and I thought that was standard. The router makes it so much easier to use regular hyperlinks for navigation.
- fixermark 12y ago>> - No HTML hyperlinks That's bad any way you slice it, and unnecessary. Angular doesn't encourage failing to make a site accessible (Unless your accessibility requirements include "JavaScript off" for some reason) >> -Slow loading times I'd believe that. Angular not only is a big library by itself, it encourages putting lots of behavior client-side. That's good if you want a dynamic site, but it can be memory- and bandwidth-intense. >> High CPU usage That's not a requirement of Angular, but since Angular's core pattern for presentation is two-way data binding and aggressive synchronization of those bindings, it's easy to fall into a performance trap if one isn't profiling often. >> Broken style I'm 100% certain that it doesn't only happen with Angular (unless you can share what plugins in particular you've had trouble with). But I can think of one aspect of Angular's design that could exacerbate this sort of issue: Angular uses non-standard (but standards-compliant) HTML tags and then replaces or augments those tags with browser-consumable tags using the directive pattern. For example, if I have a toolbar that is actually a set of divs, spans, buttons, etc., I can build a directive that injects that toolbar into the HTML and declare an injection site with <my-toolbar arg1="my custom arg" arg2="another custom arg">... etc. If a plugin assumes (foolishly ;) ) that it knows the full set of tags that can appear in a valid HTML document, it would be more likely to fail on an Angular-targeted doc, because Angular embraces this pattern as a core tool.
- alexsop2 12y agoAn example that irritates me to no end is the Playstation store. Opening links in a new tab/window means reloading the entire store app, usually taking at least 15 seconds. Likely this slow load is due to the broad scope of the app. I’ve found Angular works very well for medium sized apps, but isn't it aimed at solving the massive complexity and spaghetti code of larger applications? I’ve found that many fringe devices cannot render many Angular apps in their browsers. This includes many current/previous generation game consoles (3DS, Wii U, PS3), less capable tablets, etc. I'm not sure whether its the browsers lacking certain Javascript language features, but its irritating for a "mobile" friendly framework to not work across a broad spectrum of devices.