最近有个中等复杂度的项目(内部管理系统,二十几个页面,有些是单页就有十几个 input 的表单)需要用到前端框架,老板给的时间不多,只有 2 到 4 个礼拜,包括写后端(是的,我也负责写后端)。
鉴于自己只有 Angular 1 的经验,就算自己想用 React 或者 Vue ,但考虑到学习时间成本,不敢贸然去学习新框架,所以选了 Angular 2
之前看过 Angular 2 的代码, 的确和 Angular 1 很不同, 但实际写起来并没有自己之前想象那么艰难,花一两个小时时间熟悉下 Typescript 格式和新的 app 结构,也可以很快上手,写个中等难度的 app 也可以很快。如果说要花时间,那就是如何优化或者有些坑要踩。
如果说有什么担心的话就是 Angular 4 很快又要出来了,到时项目升级的话又要花不少时间,这也可能是 V 站人推荐 React 或者 Vue 主要原因之一吧。现在只能尽可能地多写测试特别是 e2e 测试,先上车再说...
1
simon7 2017-01-22 08:37:30 +08:00 via iPhone
有 angular-cli 省不少事呢
|
2
clearbug 2017-01-22 08:40:06 +08:00 via Android
我还想问楼主会 angular1 学 3 难不呢?没想到都有 4 了
|
5
WittBulter 2017-01-22 09:07:16 +08:00 via iPhone 1
ng2 整体来说是可以的,除了除了频繁的版本升级导致周边库报错比较麻烦
写 e2e 不如自杀,真心的 |
7
ericls 2017-01-22 09:13:47 +08:00
e2e 真的是一件很痛苦的事情
|
8
WittBulter 2017-01-22 09:42:22 +08:00 via iPhone 1
@clearbug 路由废弃了一个大版本,导致现在路由领先了。所以直接统一到 4 上。
不过基础语法应该不会在变了。 |
9
jinwyp 2017-01-22 10:02:44 +08:00 1
angular1 就是九阳神功,会了后学什么都快,相反 react 有点像九阴真经,学了后很容易走火入魔
|
10
sfree2005 OP @WittBulter
@ericls 我没有太多写 angular e2e 的经验,我做后端 php app 的时候是用 phpunit 配合 selenium 写。 如果说痛苦,是不是指要适当的使用 async await 之类的? |
12
sfree2005 OP @ericls
嗯呀 的确 因为不是 unit test 所以基本上每一个 test 就要走通一个 use case 有分支还要在走一遍 每个测试都比较花时间 |
13
learnshare 2017-01-22 18:08:17 +08:00
是要真的“会” Angular 1 ,才能很快的转 2
|
14
hantsy 2017-01-22 20:12:56 +08:00 1
@sfree2005 Angular 1.5 以后的组件概念和 Angular 2 很接近,有同样的 Component LifeCycle, $onInit, $onDestroy, $doCheck, $onChanges , Angular 2 (本身支持用 JS , Typescript , Dart 来写) 使用 TS 的话,更简单,实现相应的接口和方法。。。对于有 Java , C#基础的 Angular2 ( Typescript )更容易上手。
Angular1 组件开发, https://github.com/hantsy/angular-es6-sample/wiki Angular2 Sample (大约半年前开始尝试用,假期中会重新更新), https://github.com/hantsy/angular2-sample/wiki Angular 2 最好的用 Angular CLI 来创建,支持升级。 |