2 回答

TA貢獻1828條經(jīng)驗 獲得超3個贊
AngularJS 在實際應(yīng)用中優(yōu)點:
模板功能強大豐富,并且是聲明式的,自帶了豐富的Angular指令;
是一個比較完善的前端MV*框架,包含模板,數(shù)據(jù)雙向綁定,路由,模塊化,服務(wù),過濾器,依賴注入等所有功能;
自定義Directive,比jQuery插件還靈活,但是需要深入了解Directive的一些特性,簡單的封裝容易,復(fù)雜一點官方?jīng)]有提供詳細的介紹文檔,可以通過閱讀源代碼來找到某些我們需要的東西;
ng模塊化比較大膽的引入了Java的一些東西(依賴注入),能夠很容易的寫出可復(fù)用的代碼,對于敏捷開發(fā)的團隊來說非常有幫助,即使UI變化很大,而且產(chǎn)品更新迭代,但是js的代碼基本上卻很少改動。
補充:Angular支持單元測試和e2e-testing。
AngularJS 在實際應(yīng)用中缺點:
驗證功能錯誤信息顯示比較薄弱,需要寫很多模板標(biāo)簽,沒有jQuery Validate方便,所以我們自己封裝了驗證的錯誤信息提示;
ngView只能有一個,不能嵌套多個視圖,雖然有 angular-ui/ui-router · GitHub 解決,但是貌似ui-router 對于URL的控制不是很靈活,必須是嵌套式的;
對于特別復(fù)雜的應(yīng)用場景,貌似性能有點問題,特別是在Windows下使用chrome瀏覽器;
這沒有完美兼容低版本,升級之后可能會導(dǎo)致一個兼容性的BUG;
ng提倡在控制器里面不要有操作DOM的代碼,對于一些jQuery 插件的使用,如果想不破壞代碼的整潔性,需要寫一些directive去封裝插件,但是現(xiàn)在有很多插件的版本已經(jīng)支持Angular了;
Angular 太笨重了,沒有讓用戶選擇一個輕量級的版本,;
使用的人多才會暴露更多的問題,一起為這些問題尋找解決方案是一個社區(qū)的良性趨勢,選擇Angular,的確使開發(fā)效率大大提高。
- 2 回答
- 0 關(guān)注
- 527 瀏覽
添加回答
舉報