框架对比

来源:互联网 发布:mac迅雷怎么看片 编辑:程序博客网 时间:2024/05/17 03:49

vue.js

  • 最低支持到ie9
  • vue.js是一个渐进式框架,自底向上增量开发
  • 任意应用界面都可以抽象成组件树
  • vue在背后做了很多工作,数据和dom是绑定的,一切都是响应
  • vue把一个普通 JavaScript 对象传给 Vue 实例的 data 选项,Vue 将遍历此对象所有的属性,并使用 Object.defineProperty 把这些属性全部转为 getter/setter。Object.defineProperty 是仅 ES5 支持,且无法 shim 的特性,这也就是为什么 Vue 不支持 IE8 以及更低版本浏览器的原因
  • 变化检测:Vue 会在初始化实例时对属性执行 getter/setter 转化过程
  • Vue 异步执行 DOM 更新。只要观察到数据变化,Vue 将开启一个队列,并缓冲在同一事件循环中发生的所有数据改变。如果同一个 watcher 被多次触发,只会一次推入到队列中。
  • 父子组件的关系可以总结为 props down, events up

vue和react

相似之处:

  • 使用virtual dom深度剖析virtual dom
  • 提供了响应式组件化的视图组件
  • 将注意力集中保持在核心库,伴随于此,有配套的路由和负责处理全局状态管理的库。
    分歧:
  • vue在dom操作上尽可能少的添加额外性能的开销
  • vue的组件会在渲染过程中自动追踪
  • html&css在react中都是由JavaScript来写的,所有的组件渲染依靠jsx。优势:可以用完全用JavaScript来构造视图。而vue是拥抱html和css的
  • vue使用scoped来实现单文件组件css,react使用css models

vue和angular1

  • vue的api设计更加简单
  • vue使用webpack template模块化,更灵活
  • angular1用的是双向绑定,而vue在不同组件中强制单向数据流
  • vue中指令和组件分的很清晰。指令只封装 DOM 操作,而组件代表一个自给自足的独立单元 —— 有自己的视图和数据逻辑。
  • 在angular1中随着watcher越来越多,会导致变慢,并且如果一个watcher触发另一个更新,脏检查会执行多次。而vue是基于依赖追踪的观察系统而且异步更新队列

angular2

  • 面向大型企业应用
  • typescript

框架模式

搬运工:戳这里

0 0