Vue,初见

作者: 亨利何 | 来源:发表于2017-12-05 20:14 被阅读38次

    何宏伟

    [嵌牛导读]

    Think Always

    带着React的心态去接触Vue

    由于最近项目web端选择使用Vue,而我在前段时间刚好接触了React,所以在这样的状况下,遇见了Vue。尽管呢,两者使用时间都不是很长,但是遇到的问题却是不少,管中窥豹,从自身的角度来谈谈两者的异同。

    [嵌牛鼻子]

    Vue,Vuex,React,Redux

    [嵌牛提问]

    • Vue && React两者都采用了组件化的思想,具有同样特殊的数据绑定,不同之处在哪里?
    • 使用两者编程最直观的感受如何?
    • 怎样判断在你的项目中使用Vue || React

    [嵌牛正文]

    Data Flow

    一. 组件和数据绑定

    两者都具有MVC的架构模式,如果你使用vue-cli生成webpack项目模板,你会发现代码组织非常清晰,这点与React是相似的,都具有比较清晰的代码组织。

    • 组件

    React显得严谨,Vue则是落落大方。编写时,React需要采用面向对象的方式来继承Component,组件内部采用JSX来编写

    class Welcome extends React.Component {
      render() {
        return <h1>Hello, {this.props.name}</h1>;
      }
    }
    

    Vue每一个.vue文件都可为一个组件,在 Vue 里,一个组件本质上是一个拥有预定义选项的一个 Vue 实例,每个组件内部也可以引用,组件之间也可以相互引用。在 Vue 中注册组件很简单:

    Vue.component('todo-item', {
      template: '<li>这是个待办项</li>'
    })
    
    • 数据绑定

    两者都有Props数据流,不过Vue本身就已经实现双向数据流v-model,不像React需要手动事项双向数据绑定。
    对于组件之间的通信所形成的数据传递,还没有很完整的想法,不过还是欢迎大家和我讨论。

    二. 抉择:Vue or React

    Double V
    • Vue + Vuex.

    优势: 渐进式构建能力是Vue的专属能力,渐进式构建正是Vue最大的优势。Vue具有简洁,合理的架构,这使得Vue非常易于理解,使用起来更加得心应手,更容易构建应用。

    弱点: 很明显的一个特点就是:Vue依赖一个单独的人。其他的项目基本都是有一个组织提供支持,而Vue尽管有强大的社区和许多创新型的新增项目,但是Vue的核心开发仍然落在一个人身上,所以在未来的生存之路上必定面临艰辛。

    何时选择 Vue + Vuex
    如果你有一个传统的Web应用程序,并需要一个坚固稳定的程序层,那么你的答案就是VueVue具有比较清晰的模式,逻辑清晰,代码组织清晰,及时没有经验的团队也可以较为轻松的上手。

    Double R
    • React + Redux.

    优势: ReactRedux常常需要组合起来使用,两者都非常专注做自己的事,结合其他的功能可以完美构建应用,对于大多数开发人员还是可以比较轻松掌握概念,并了解单向数据流的优美之处,相互之间的功能组合,互补,可以简化大量用户界面应用程序。

    弱点: 要构建一个结构完整,功能丰富的Web应用程序,你需要许多的功能,而一旦你脱离“合作关系”- React Redux其他你使用的库,很快你的应用将会分散,难以维护,这种松散的架构一定会在未来找你麻烦。

    何时选择 React + Redux
    如果你仅仅是缺少贴近问题的处理逻辑,需要一个非常完美的能够解决你问题的库,而框架则是次要,那么React + Redux是适合你的。


    END
    参考文章:前端框架

    相关文章

      网友评论

        本文标题:Vue,初见

        本文链接:https://www.haomeiwen.com/subject/hsbwbxtx.html