<template>
</template>
<script>
import list from './list.vue';
import axios from 'axios';
export default {
name: 'app',
data() {
return {
history: [],
}
},
beforeCreate() {
const vm=this;
//调用模板自身
},
methods: {
getData(str) {
axios.get('https://gank.io/api/day')
.then(function (r) {
//调用模板自身
})
}
},
}
</script>
<style>
</style>
在一个vue单文件组件中,我想知道在beforeCreate或者在methods中怎么获取到自身的data,只能通过this吗?????这样每写一个方法中都有带一个this声明,感觉应该有更好的方法
不是很明白题主的意图
beforeCreate
是回调钩子this.history
就已经能够获取到你的data而getData()
这个事件.因为你使用了axios
这样的写法then里面或许会改变this.所以在外面定义一个let _this=this
就可以还有 如果你用es6的箭头函数 就能完美解决这个问题了