getFenlei() { this.$http.get('option/jingdianleixing/jingdianleixing').then(res => { if (res.data.code == 0) { this.fenlei = res.data.data; } }); },
时间: 2023-12-06 17:43:02 浏览: 71
这是一个 Vue.js 组件中的方法,它使用了 Vue.js 内置的 HTTP 客户端库 $http 发起了一个 GET 请求,获取了一个名为 'option/jingdianleixing/jingdianleixing' 的资源。如果请求成功,返回的数据中如果 code 字段的值为 0,就将响应数据中的 data 字段保存到组件的 fenlei 属性中。这个方法可能用于请求获取景点类型的列表数据,并将其保存到组件的属性中以供后续使用。
相关问题
getBuildingNum() { //xAxis.data request.get("/building/getBuildingName").then(res => { if (res.code === '0') { this.option.xAxis.data = res.data //series.data request.get("/room/getEachBuildingStuNum/" + res.data.length).then(result => { if (result.code === '0') { this.option.series[0].data = result.data } }) } }); },
这段代码是用于获取建筑物数量和每个建筑物的学生人数,并将其作为 ECharts 实例的选项。具体来说,该函数首先通过 `request.get` 方法获取建筑物名称,并将其作为 X 轴的数据。然后,通过请求 `/room/getEachBuildingStuNum` 接口获取每个建筑物的学生人数,并将其作为第一个系列的数据。最后,将这些数据设置为 ECharts 实例的选项。
<template> <div> <select v-model="sel1" @change="provienceChange(sel1)"> <option v-for="item in provience" :key="item.id" :value="item.id" > {{ item.name }} </option> </select> <select v-model="sel2" @change="cityChange(sel2)"> <option v-for="item in citys" :key="item.id" :value="item.id" > {{ item.name }} </option> </select> </div> </template> <script> /* eslint-disable */ export default { data() { return { //存储省的数据 provience: [], sel1: "", //存储市的数据 citys: [], sel2: "", }; }, mounted() { this.getfindData(); }, methods: { getfindData() { this.$http({ url: this.$http.adornUrl("/city/getCityProvince"), method: "get", }).then(({ data }) => { this.provience = data.data; }); }, //选择的省变化的时候,获取所选的省对应的id,并请求市的数据 parentid provienceChange(sel1) { this.$http({ url: this.$http.adornUrl(`/city/getCityByParentId/${sel1}`), method: "get", }).then(({ data }) => { this.citys = data.data; this.sel2 = res[0].id; }); }, }, }; </script> <style> select { width: 100px; } </style> 帮我吧第二个下拉框给成可以多选
将第二个下拉框改为多选可以使用`<select>`的`multiple`属性,同时需要将`v-model`改为数组类型的变量,将`@change`事件改为`@input`事件。修改后的代码如下:
```html
<template>
<div>
<select v-model="sel1" @change="provienceChange(sel1)">
<option v-for="item in provience" :key="item.id" :value="item.id">{{ item.name }}</option>
</select>
<select v-model="sel2" @input="cityChange(sel2)" multiple>
<option v-for="item in citys" :key="item.id" :value="item.id">{{ item.name }}</option>
</select>
</div>
</template>
<script>
export default {
data() {
return {
//存储省的数据
provience: [],
sel1: "",
//存储市的数据
citys: [],
sel2: [], // 改为数组类型
};
},
mounted() {
this.getfindData();
},
methods: {
getfindData() {
this.$http({
url: this.$http.adornUrl("/city/getCityProvince"),
method: "get",
}).then(({ data }) => {
this.provience = data.data;
});
},
//选择的省变化的时候,获取所选的省对应的id,并请求市的数据 parentid
provienceChange(sel1) {
this.$http({
url: this.$http.adornUrl(`/city/getCityByParentId/${sel1}`),
method: "get",
}).then(({ data }) => {
this.citys = data.data;
this.sel2 = [this.citys[0].id]; // 初始化选中第一个值
});
},
},
};
</script>
<style>
select {
width: 100px;
}
</style>
```
需要注意的是,`v-model`的值和`<option>`的`value`值都必须为每个选项的id,而不是name。另外,由于`<select>`的多选功能是浏览器自带的,因此多选后的值为一个包含选中项id的数组。
阅读全文