优点:
数据驱动视图,对真实 dom 进行抽象出 virtual dom(本质就是一个 js 对象), 并配合 diff 算法、响应式和观察者、异步队列等手段以最小代价更新 dom,渲染页面
组件化,组件用单文件的形式进行代码的组织编写,使得我们可以在一个文 件里编写 html\css(scoped 属性配置 css 隔离)\js 并且配合 Vue-loader 之后,支 持更强大的预处理器等功能
强大且丰富的 API 提供一系列的 api 能满足业务开发中各类
由于采用虚拟 dom,让 Vue SSR(服务器渲染) 先天就足
生命周期钩子函数,选项式的代码组织方式,写熟了还是蛮顺畅的,但仍然 有优化空间(Vue3 composition-api)
生态好,社区活跃
缺点:
由于底层基于 Object.defineProperty 实现响应式,而这个 api 本身不支持 IE8 及以下浏览器
CRS(浏览器端渲染) 的先天不足,首屏性能问题(白屏)
由于百度等搜索引擎爬虫无法爬取 js 中的内容,故 spa(单页Web应用) 先天就对 seo(搜索引擎优化) 优化心有余力不足