我为什么选择 Vue 而不是 React?

栏目: 服务器 · 发布时间: 6年前

内容简介:在前端三大框架的日趋成熟的今天,React 和 Vue 的“用户口碑”已经远远超过 Angular。在这篇文章中,我会解释:在这些框架中,我为什么会偏爱 Vue?在这过程中,我会尽力用客观的立场表达这些观点。在 Web app 中,最常见的元素就是用后端给到的数组渲染出一个列表。让我们看看这在 Vue 和 React 中的不同写法。

我为什么选择 Vue 而不是 React?

在前端三大框架的日趋成熟的今天,React 和 Vue 的“用户口碑”已经远远超过 Angular。在这篇文章中,我会解释:在这些框架中,我为什么会偏爱 Vue?在这过程中,我会尽力用客观的立场表达这些观点。

列表元素 | List Elements

在 Web app 中,最常见的元素就是用后端给到的数组渲染出一个列表。让我们看看这在 Vue 和 React 中的不同写法。

React

我为什么选择 Vue 而不是 React?

Vue

我为什么选择 Vue 而不是 React?

现在可以对比哪一个更简单:React 的 jsx 还是 Vue 的 template?你决定就好。

我更倾向于 Vue 的写法,它看起来更干净一些。

组件结构 | Component Skeleton Structure

如下是两者组件的不同写法。

React

我为什么选择 Vue 而不是 React?

Vue

我为什么选择 Vue 而不是 React?

对于一个组件来说,把视图层(html/css)和逻辑层(javascript)分开,会使得整个组件变得清爽易读。反观 React 的语法,乍一看是很混乱的(再次强调这只是我个人的看法)。

组件生命周期 | Component Lifecycles

React

  • constructor
  • componentWillMount
  • componentDidMount
  • componentWillUpdate
  • componentDidUpdate
  • render

对于一个新手来说,要区分这些生命周期会让人感到些许疑惑(这可不是 React 的锅),你不能说这些命名有问题,但是从我的直观感受来说:确实不够简练。

Vue

  • created
  • beforeMount
  • mounted
  • beforeUpdate
  • updated

简洁且通俗易懂。

事件绑定 | Event Handling

在任何一个框架中,事件绑定都是一个高频的操作,所以它的写法应该尽可能的简单和直接。现在来看看 React 和 Vue 中事件绑定的不同写法。

React

我为什么选择 Vue 而不是 React?

Vue

我为什么选择 Vue 而不是 React?

对比之下,Vue 为事件绑定提供了非常简便的写法,但在 React 中,开发者需要在定义好函数之后再在 constructor 中绑定好 this 的指向,这对于一个简单的 click 事件来说显得有些不方便(如果用箭头函数定义的话,倒是不用这么麻烦)。

计算属性 | Computed Properties

值得一提的是,Vue 为开发者提供了一个很便捷的属性:computed(是的,React 并没有)。

假设我们有一个叫作 rmb 的属性,但是我们需要把它转换成 dollar 之后渲染在页面上。利用 computed 属性可以很方便的解决这个问题:

我为什么选择 Vue 而不是 React?

总之依我看来,在使用设计/开发体验/学习成本这三个角度,Vue 几乎是以压倒性的优势胜过了现如今的其他各种前端框架。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

解密搜索引擎技术实战

解密搜索引擎技术实战

罗刚 / 2011-6 / 69.80元

《解密搜索引擎技术实战-Lucene&Java精华版(附盘)》,本书主要包括总体介绍部分、爬虫部分、自然语言处理部分、全文检索部分以及相关案例分析。爬虫部分介绍了网页遍历方法和如何实现增量抓取,并介绍了从网页等各种格式的文档中提取主要内容的方法。自然语言处理部分从统计机器学习的原理出发,包括了中文分词与词性标注的理论与实现以及在搜索引擎中的实用等细节,同时对文档排重、文本分类、自动聚类、句法分析树......一起来看看 《解密搜索引擎技术实战》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具