【发布时间】:2020-05-24 17:42:52
【问题描述】:
{
"Data": {
"Services": [
{
"Description": "Test",
"ServiceID": 147855555,
"Hotels": [
{
"HotelId": "3969f33bc946",
"HotelName": "Crackle",
"IsSelected": true,
"rooms": [
{
"RoomId": "0abddf051b2f",
"HotelRoomDescription": "Room1",
"IsSelected": false
},
{
"RoomId": "7ea2a918992f",
"HotelRoomDescription": "Room2",
"IsSelected": false
}
]
},
{
"HotelId": "1c6d71b3dc8a",
"HotelName": "Steve",
"IsSelected": true,
"rooms": [
{
"RoomId": "679c9216304f",
"HotelRoomDescription": "Bar",
"IsSelected": false
},
{
"RoomId": "b71e7f62c0e9",
"HotelRoomDescription": "Station",
"IsSelected": false
},
{
"RoomId": "848abbb3bce7",
"HotelRoomDescription": "Room 1",
"IsSelected": false
},
{
"RoomId": "270c22b8ef9e",
"HotelRoomDescription": "Room 2",
"IsSelected": false
}
]
},
{
"HotelId": "5dfa2733f743",
"HotelName": "Club",
"IsSelected": false,
"rooms": []
}
]
}
]
},
"Message": "Success",
"Status": "Success",
"Type": 0
}
在前端,我将细节显示为树。例如,如果我们搜索“bar”,则酒店名称“Steve”包含房间“bar”。然后需要显示对应的酒店名称和HotelRoomDescription。如果我们不搜索,它会将整个酒店名称及其对应的房间列为树状结构。
这里roomSearch 是 v-model,无论我们输入什么进行搜索,都可以通过它获取值。
if(this.roomSearch.trim() === "") return this.hotels;
var roomenames = this.hotels.filter(function(hotel){
return hotel.HotelRoomDescription.toLowerCase().indexOf(_this.roomSearch.toLowerCase()) -1;
});
return roomenames;
里面写的代码有错误,它没有过滤HotelRoomDescription。它不会进入房间......
【问题讨论】:
标签: vue.js ecmascript-5