vue3中reactive踩坑记录

在 Vue 3 中,reactive 是用来创建响应式数据的。当你尝试用 stations = []; 直接覆盖一个响应式对象时,Vue 3 并不会再将其视为响应式的,而是将其替换为一个普通的 JavaScript 数组。

// 响应式
let stations: StationType[] = reactive([]);

//在方法中这样写,虽然stations 的值更改了,但是在template获取到的仍会是一个空数组[]
stations = [];   
stations = [1,2,3]

正确的清空方法应该是这样的

 stations.splice(0, stations.length); // 清空数组但保持响应式

你可能感兴趣的:(vue.js,javascript,前端)