vue源码个人理解1---三分一把刀

         我是三分一把刀。

         这次还没有看源代码,也没网上查资料,仅仅基于16年看过的代码,和其他语言和工作经历来说下自己的对这种双向绑定【mvvm】的框架的理解。

         1,Object.defintPropety,首先能够实现mvvm,还得感谢浏览器内核的一步一步升级,现在javascript Object拥有的一个方法,能够监听属性的改变Object.defintPropety,大家可以自己去深入了解,当中有一个可set,和get的方法,也就是说一旦属性修改和获取的回调,也就是这个方法,才助成了现在的mvvm这种易程序员开发的框架,相比angular1那种loop机制实在是好太多了;

         本人有开发java,python,php的经历,所以对比高级语言来说,其实就是一个实体对象的get与set,还有,还得感谢深圳金证集团,在研发中心的一年多时间里主要做一个UI编辑器,用的是react + redux 做的,里面有很多理念其实和这种框架设计差不多,对dom,组件的操作,数据的管理与监听等。这里再次感谢老东家,在内部上班时候觉得公司不咋地,出来了之后觉得还是挺好,这种感觉就像学校或者家里一样,在内的时候觉得垃圾,出来了觉得那是个港湾。有感而发

        2,框架根据dom的结构读取出各个指令与数据进行绑定耦合,当前最开始是初始化框架的配置,绑定耦合主要涉及observe,watcher,dep。这里主要是observe,比如一个name的数据有三个dom用了,那就是name--->[dom1,dom2,dom3]这么一个应对关系,然后name修改了,同时把三个dom也给修改了,这就是数据响应式的原理,个人认为核心也就在这里。

        3,指定与生命周期,这个就不用多说了,做过客户端android或者其他框架,都有before,mounted之类的生命周期,始终伴随着整个应用。

        4,vuex,这个没看过,当然原理和页面内observe差不多,功能无非一个是全局的。没有什么太大的区别【内部细节等看了之后再来说】

        这是我几年前看源代码现在来总结的,接下来的一段时间,我会和大家一起重新学习下vue的源代码和精神。。。

        我是三分一把刀

        

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • vue理解浅谈 一 理解vue的核心理念 使用vue会让人感到身心愉悦,它同时具备angular和react的优点...
    ndxs2008阅读 24,489评论 2 18
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 11,816评论 1 32
  • 一:什么是闭包?闭包的用处? (1)闭包就是能够读取其他函数内部变量的函数。在本质上,闭包就 是将函数内部和函数外...
    xuguibin阅读 10,080评论 1 52
  • 一 理解vue的核心理念 使用vue会让人感到身心愉悦,它同时具备angular和react的优点,轻量级,api...
    唐人不自醉阅读 67,162评论 11 116
  • VUE介绍 Vue的特点构建用户界面,只关注View层简单易学,简洁、轻量、快速渐进式框架 框架VS库库,是一封装...
    多多酱_DuoDuo_阅读 2,883评论 1 17

友情链接更多精彩内容