如题,按照官网的步骤制作了个vue的demo,在为组件的某个元素绑定点击事件后,想用this获取当前组件的实例,但是发现获取到的是这样的,请问该如何获取组件的实例?
代码如下:
<div class="hello">
<h1>{{ msg }}</h1>
<h2 @click="doSth">Essential Links</h2>
<ul>
<li><a href="https://vuejs.org" target="_blank">Core Docs</a></li>
<li><a href="https://forum.vuejs.org" target="_blank">Forum</a></li>
<li><a href="https://chat.vuejs.org" target="_blank">Community Chat</a></li>
<li><a href="https://twitter.com/vuejs" target="_blank">Twitter</a></li>
<br/>
<li><a href="http://vuejs-templates.github.io/webpack/" target="_blank">Docs for This Template</a></li>
</ul>
</div>
</template>
<script>
export default {
name: 'HelloWorld',
data () {
return {
msg: 'Welcome to Your Vue.js App'
}
},
methods: {
doSth: (e) => {
console.log(e, this) //打印出来不是当前组件的实例
}
}
}
</script>
打印出的this截图如下,发现明显不是当前组件的实例:
methods
的定义不要用箭头函数。