Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[vue] 说说vue的优缺点 #224

Open
undefinedYu opened this issue Jun 11, 2019 · 11 comments
Open

[vue] 说说vue的优缺点 #224

undefinedYu opened this issue Jun 11, 2019 · 11 comments
Labels
vue vue

Comments

@undefinedYu
Copy link
Contributor

[vue] 说说vue的优缺点

@undefinedYu undefinedYu added the vue vue label Jun 11, 2019
@MachineDream
Copy link

这个感觉和对vue的理解是差不多的题
优点:1. 数据驱动
2.模块化
3.轻量级
4.SPA
5. 版本3.0的界面化管理工具比较好使
6.vue易入门
缺点:1. 不支持低版本浏览器

@vipbo
Copy link

vipbo commented Jul 24, 2019

缺点很明显,入门易,面试难。 哈哈……

@hushengNo1
Copy link

个人感觉:
优点:

  1. 中文社区强大,入门简单,提升也有很多的参考资料。

@qp97vi
Copy link

qp97vi commented Aug 7, 2019

优点:
1.入门简单
2.模块化
3.数据驱动
缺点:
不支持IE8以下浏览器

@SorrowX
Copy link

SorrowX commented Aug 27, 2019

缺点:

  1. 吃内存(每个组件都会实例化一个Vue实例,实例的属性和方法很多)
    2.定义在data里面的对象,实例化时,都会递归的遍历转成响应式数据,然而有的响应式数据我们并不会用到,造成性能上的浪费
    3.像keep-alive transition transition-group 这些内置组件,不管用不用其实都已经挂到Vue.options.components上,如果不用,造成对象变大,从而占用内存
    4.父子组件更新,没有明确的来源

@XdyGoGo
Copy link

XdyGoGo commented May 24, 2020

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

@qq-radio
Copy link

qq-radio commented Jan 4, 2021

自己的理解不知道对不对,数据的监听在初始化时就绑定监听器了,所以后续数组或对象的改变不一定会及时监听或更新到,得采用this.$set()或其它方法,(this.$set()是万能方法)

@yxllovewq
Copy link

yxllovewq commented Mar 8, 2022

缺点:

  1. ie8以下不支持,因为数据绑定是通过Object.defineProperty
  2. 首屏加载时间长
  3. 不利于SEO,vue应用是SPA

@sc950828
Copy link

sc950828 commented Sep 23, 2022

  1. 需要额外学习。
  2. vue2在ie8以下不支持,因为数据绑定是通过Object.defineProperty。vue3在ie11以下不支持,因为有用到proxy。
  3. 首屏加载时间长,因为是浏览器渲染。
  4. 不利于SEO,因为是浏览器渲染。

@IMDAYUY
Copy link

IMDAYUY commented Jun 27, 2023

优点:

  1. 数据驱动试图
  2. 组件化、模块化开发
  3. 生态完善,社区活跃
  4. SPA
  5. 轻量级
    缺点:
  6. 由于底层基于Object.defineProperty实现响应式,而这个api本身不支持ie8及以下浏览器
  7. 首屏加载时间长
  8. eso优化比较差

@Cai-zhiji
Copy link

优点

  1. 简单易学
    Vue的api简洁明了,易于学习和上手
  2. 高效灵活
    Vue使用虚拟dom和响应式数据绑定,能够高效地更新视图,并具有灵活的组件化开发模式
  3. 渐进式框架
    Vue可以逐步应用于现有项目,也可以作为单页面应用(SPA)的完整解决方案
  4. 生态系统丰富
    Vue拥有庞大而活跃的社区,提供了大量的插件、组件和工具,方便开发者构建复杂的应用程序。

缺点

  1. 学习曲线
    尽管Vue相对容易学习,但对于初学者来说,仍需要一定的时间和经验来掌握其核心概念和开发技巧。
  2. 生态系统不稳定
    由于Vue相对年轻,与其他框架相比,它的生态系统可能不够稳定和成熟,某些功能可能还不完善或缺乏支持。
  3. 性能问题
    尽管Vue在性能方面做出了很多改进,但在处理大规模数据和复杂组件树时,仍可能面临性能方面的挑战。需要合理地进行性能优化和缓存处理。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
vue vue
Projects
None yet
Development

No branches or pull requests