methods属性

methods属性是一个对象,通常我们会在这个对象中定义很多的方法,这些方法会被绑定到vue的template模板中,在methods中定义的方法,我们可以直接使用this关键字来访问到data中所返回的对象。

下面是一段官方文档对methods选项的描述,注意:不应该使用箭头函数来定义methods中的函数,理由是箭头函数绑定了父级作用域的上下文,所以this将不会按照所期望的去指向组件实例,因此这时的this.a将会是undefined。

而根据官方文档的这段描述便可以对以下两个问题作出简要的回答了:

问题一:为什么不能使用箭头函数去定义函数呢?

我们需要在methods中使用data所返回的数据,那么这个this是必须有值的并且应该可以通过this获取到data返回对象中的数据,this不可以是window,因为window中我们无法获取到data返回对象中的数据;但是如果我们使用箭头函数,那么这个this就会是window了。

问题二:不使用箭头函数的情况下,this到底指向的是什么?

此时this指向的是组件实例,所以可以获取到data所返回的数据,否则指向的是window。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值