I have a strong suspicion that all of these Angular diehards have never worked on someone else's Angular project.
I have a strong suspicion that all of these Angular diehards have never worked on someone else's Angular project.
But from my perspective, I'd rather inherit a messy AngularJS project rather than a messy jQuery project. Or Backbone. With jQuery or Backbone, who knows what kind of stack they decided to use, or what kind of crazy hacks they implemented to get it to work? The same thing can happen in AngularJS, but at least it is more probable that they'll be relying on out-of-box tools for core functionality.
Now, I agree that in general, web software front end projects can be gross, but I find Angular to be the least gross solution.
That said, I've worked with other people's angular code and I can't say that refactoring other people's implementations was a problem.
However I can see how a someone without a proper understanding could make a mess of things, particularly if they are also bad at TDD.
As for your bad experience, I can see how that can happen with Angular, but I can also see that happening in other ways with other libraries. In my opinion that is solved by using good code patterns and writing code for others, not for yourself. I'll leave this relevant quote:
"Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live." - Martin Golding
Angular isn't a cure-all for good application design. You can write bad Angular code as with anything else.