当你从后端获取到你所需要的数据,但是这个数据是所有标题下未进行分类的所有数据,那么我们此时就要自己进行分类,通过分类时的判定条件让数据显示在对应区域。
解决方法:
第一步:找出分类数据的判断条件,就是怎么样判断这条数据是在这个标题下,那么很好的一个判断方式就是“根据标题进行分类”,因为这些数据都会有它对应的标题。
第二步:定义一个空对象,用来储存这些标题的内容。
第三步:在watch监听里面用filter方法进行分类。
代码如下:
<script>
import axios from "axios";
export default {
name: "App",
data() {
return {
path: [],//用来接收后端请求到的数据
courses: {},//用来储存所有标题的名称
};
},
created() {
axios({
url: "",//后端获取数据的地址
method: "post",
}).then((res) => {
this.path= res.data;
});
},
//事件监听
watch: {
path: function () {
this.courses = {};
this.path.forEach((key) => {
this.courses[key] = [];
});
for (let key in this.courses) {
this.courses[key] = this.path.filter((item) => item == key);
}
console.log("this.courses", this.courses);
},
},
};
</script>
根据自身需求添加代码,此方法适用于二级标题,请慎用!!!
如有什么地方不对,请及时指正!