说一说AngularJS让你觉得不爽的地方

moohyeah
  • 81

貌似AngularJS现在挺火的,问一下它有什么令人不太爽的地方呢?

回复
阅读 6.4k
9 个回答
题叶
  • 17.3k
✓ 已被采纳

虽然问题很怪, 但还是很想答,, 看 Angular 不爽, 真的, 虽然很喜欢, 但是..

Angular 最吸引人的是双向绑定的功能, 合并了大量界面操作, 加快了开发.
问题是, 实际上很多方案可以实现双向绑定, 特别是有个专门实现双向绑定的方案 Ractive:
http://ractivejs.org/
借助这个模块, 双向绑定几个小时就上手了, 完全不用 Angular 搞那么多复杂的概念.

Angular 比较大的问题就是这样, 和现有的多种工具不能完美搭配,
加上陡峭的学习曲线, 真是不爽

学习曲线太陡。。没有后台牛逼经验感觉没办法入手,观念都太超前了。。表示无力。。(╯‵□′)╯︵┻━┻

学习曲线太陡, 和ember相比,新概念太多,没接触过js mvc的一开始会很蛋疼

学习曲线陡(貌似大家都这么说,还好我挺过来了!)

没必要太过纠结,先学了、用了,把时间利用起来了,再来探讨这类的问题吧。

6n2cos
  • 4
新手上路,请多包涵

为何我觉得AngularJS比Ember容易多了,我是异类么

  • 像@题叶说的一样, angular像是一个与其它库隔离的框架,要在angular中使用其它的库、插件,你需要把那个库、插件angular化
  • debug不是很方便
上来问问题的
  • 384

1、模板引擎不够强大(参考laravel-blade中的@extends)
2、controller满天飞,一个典型CRUD要写4个controller而不是method/function
3、依赖注入做的啰嗦,例如
.controller('todoApp', ['plugin1', 'plugin2', '$pluginProvider', function($plugin1, $plugin2, $pluginProvider){ return $plugin1.xxx('这是多么痛的领悟,请问你知道$符号的意义么?'); }])
4、完全跑在浏览器端速度超快,不过是把双刃剑,因为浏览器有跨域限制,想让Angular直接访问server/api时你就需要各种奇淫技巧(xdomain.js/http-header-option/etc)。
5、安全性,若是没有env的帮忙(前提你需要有个支持env变量的环境),那么你的EndPoint/ApiSecret/AccessToken等敏感信息你就基本暴露给了所有人,当前现在有了sessionStorge和localStorge,可依然是让每一个匿名用户都能拿到,被拿到就总有被破解的可能,你说对吧。

学起来要有啃书的精神,我当年学是配合开源社区翻译了Oreilly的那本书的两章,试译了NG-Book的一章,彻底吃透也不是不可能,现在那本书和最新的ng-book都有了中文版,多看多练,掌握还是不难了,而且入门看懂之后,就不用看书,看文档就可以编程,现在AngularJS中文社区已经把国外的文档Copy了一份,不像我用的那个年代,看官方文档,还得想招翻墙。

宣传栏