使用axios从后端获取数据并赋值时遇到的问题
使用reactive定义了一个数组values,通过axios从后端获取数据并赋值给该数组,再通过onMounted钩子进行页面渲染。但是在我进入页面后却发现页面并没有被渲染。。。
let values = reactive([]);
getTrainingMeans().then((res) => {
values=res.data.data;
});
原因:values经过被重新赋值后失去了响应式的特征
修改代码:
getTrainingMeans().then((res) => {
values.push(...res.data.data);
});
如果用ref定义数组,则可以直接赋值
let infos = ref([]);
getNewTrainingMeans({ userId: localStorage.getItem("userName") }).then(
(res) => {
infos.value = [...res.data.data];
}
);