与 React 相比,Vue.js 有哪些优点?
  React组件是函数,所以写React组件其实就是在写函数,写一个什么样的函数呢?一个接收 `props` 作为参数的函数,至于 `props` 这个参数中包含什么那就您随意了,所以js这门语言所拥有的都可以看做是React拥有的,比如高阶组件不就是高阶函数嘛~
Vue的组件也是函数,只不过写Vue组件却不是在写函数,而是在写函数的参数,比如:
export default {
  name: 'FuckComp',
  created () {
    console.log('fuck fuck fuck')
  },
  props: ['a', 'b']
}
 
这不就是一个普通的对象嘛,可以看到 `props` 只是参数的一部分。
以上是内容说明什么呢?打个比喻,比如实现:debounce(func, [wait=0], [options={}])函数。用React实现就像是你需要完全自己开发:
function debounce (func, wait, options) {
  // ... 具体实现你自己去写
}
 
而用Vue实现就像你仅仅需要传递一个配置对象:
// 你只需要告诉我你要的是什么,具体我帮你实现
{
  fn: func,
  wait: 0,
  options: {}
}
 
从这个角度来看的话我们还可以举一个不严谨的例子:把React比作nodejs,那么Vue就是Koa。
Vue说它简单,理由是:React组件是函数,Vue组件是高度封装的函数。
React说它拥有完全的JavaScript能力,理由也是:React组件是函数,Vue组件是高度封装的函数
所以你看,优点不优点的,最后不都看个人口味吗。
用Vue真的很爽就像在吃糖,但有时候React的灵活真的也能让你有种想要大展才华的快感。
