从源码中学Vue(二)彻底搞清楚methods中的方法原理( 三 )
我圈出来的就是了,可以看到传的两个实数。第一个vm表示的是vue的实例,第二个参数就是我们传进去的methods对象了。知道了实参,我们反过来去分析形参
首先,第二个形参methods就是我们传进来的methods了,所以源码接着通过for in 循环这个methods对象
其中for in 循环中的key 就是我们的方法名了。
再来看最后一行代码
可以看到,vm[key]这一步骤就解释了为什么我们可以通过this去访问到methods中的方法了,是因为源码中将methods中的所有的方法都挂载到了this实例下面了。
继续往后看
首先源码中作了一个判断,如果说我们在methods中定义的可能不是函数,那么则返回一个空函数,这里面noop就是一个空函数。它的源码是这样的
不光在vue中,jquery中的源里也用noop作为一个空函数
再来看定义的是一个函数的时候,源码中调用了
推荐阅读
- windows xp|开发人员从泄漏的Windows XP源码中发现了隐藏功能
- 中学生偷看“不良网站”,以为没人能察觉?手机3种痕迹暴露行踪
- 开源组织逼宫微软,希望其开放Windows 7系统源码!
- 新token钱包区块链猫力多币种量化钱包源码免费分享下载供学习研究
- 8年前割肾买“苹果”的高中学生,现在活成什么样,看完唏嘘不已
- 24岁阿里P 7架构师为你进行spring源码深度解析,听完我立马就跪了
- 阿里十年架构师带你从Spring入门到源码深度解析,深入技术内幕
- 2020年的前端工程师请收下这几个Vue.js开源框架
- Linux 源码现状:内核近三千万行代码,Systemd 130万行代码
- 看看京东掌门人刘强东中学时期照片, 网友: 原来以前合照也靠边站