我将组件移动到一个单独的文件,我想获取正确获取的数据,但变量没有被覆盖。如何改变组件的状态?变量以其原始形式显示,没有变化。
<template>
<p> {{ resp }} </p>
</template>
<script>
import axios from 'axios';
let resp = "1";
axios.get('http://localhost:1337/api/users')
.then(function(response) {
resp = response.data;
});
export default {
name: 'test',
data () {
return {
resp: resp
}
}
}
在JavaScript中,字符串、数字、布尔
null值undefined在分配时按值传递。执行return { resp: resp }时,"1"全局变量的值将被resp复制到resp返回对象的属性中。这意味着当全局变量改变时resp,组件的属性resp不会改变。说明您的问题的最少代码:
解决问题,可以传递
resp对象中的值您可以使用生命周期挂钩