对 TypeScript 的支持
Angular 必须用 TypeScript 来开发。
Vue 也支持 TypeScript ,但并没有像 Angular那么深入。
在中小型规模的项目中,引入 TS 可能并不会带来太多明显的优势,所以使用 Vue比较多。
运行性能
这两个框架运行速度都很快,不过速度不是性能决定性的因素,还可以根据具体的数据做更细粒度的对比。
代码体积
在体积方面,最近的 Angular 版本中的代码体积减小了许多。但是,Vue 项目相比 Angular 还是要小得多。
使用灵活性
Vue 相比于 Angular 更加灵活,Vue 官方提供了构建工具来协助你构建项目,但它并不限制你去如何组织你的应用代码。有人可能喜欢有严格的代码组织规范,但也有开发者喜欢更灵活自由的方式。
(个人的想法:Vue 可以使用<script>标签将 vue,js 直接引入页面,对一个单独的页面或者页面中的一部分使用 Vue来实现功能,而 Angular 是必须使用官方提供的脚手架工具搭建一个完整的 Angular 项目来进行开发。将一些使用老的技术选型的稳定项目换成新的框架进行重构可能不太实际,但是后续开发还是可以借助 Vue来进行的,不会影响原来的功能。)
学习曲线
Angular 的 API 相对 Vue 来说比较复杂,Vue 上手比较容易。而 Angular API 复杂也是因为它本身就是针对大型的复杂应用来设计的,Vue 还是较多应用于中小型的项目。
(官方分析:
要学习 Vue,你只需要有良好的 HTML 和 JavaScript 基础。有了这些基本的技能,你就可以非常快速地 通过阅读 指南 投入开发。
Angular 的学习曲线是非常陡峭的——作为一个框架,它的 API 面积比起 Vue 要大得多,你也因此需要理解更多的概念才能开始有效率地工作。当然,Angular 本身的复杂度是因为它的设计目标就是只针对大型的复杂应用;但不可否认的是,这也使得它对于经验不甚丰富的开发者相当的不友好。)