首页 > 解决方案 > 如何在vue js的过滤器搜索中添加大于等于的条件

问题描述

大家好,我要构建一个房地产应用程序,我想在 Bedrooms 过滤功能中添加一个条件,例如“大于等于”

例如:- 如果我在 Bedroom 列表中选择 2,我想过滤大于等于 2 Bedrooms 的属性

我怎样才能做到这一点

export default {
  data() {
    return {
      blogs: [],
      minbed: this.$route.params.bed,
    }
  },
  created() {
    this.$http.get("https://test.json").then(function(data) {
      console.log(data);
      this.blogs = data.body;
    });
  },
  computed: {
    filteredList() {
      const { blogs, search, UnitType } = this;
      return this.blogs
        .filter(blog => blog.Bedrooms.includes(this.minbed))
  }
}
<select
  v-model="minbed"
  id="formInput202"
  class="form-control"
  value="MaxBedrooms"
>
  <option>Max.Bedrooms</option>
  <option>1</option>
  <option>2</option>
  <option>3</option>
  <option>4</option>
  <option>5</option>
  <option>ST</option>
</select>

标签: vue.jsvue-routervue-resourcevue-select

解决方案


includes在这种情况下方法不起作用。仅接受字符串作为参数 (Ref- Link1 )。

内联回调函数会理清这种情况,

检查下面的代码。

filteredList() {
    const { blogs, search, UnitType } = this;
    var MaxBedroomsVal = this.minbed;
    return this.blogs.filter( function (blog) { 
        return blog.Bedrooms >= MaxBedroomsVal;
    })
}

参考:链接2


推荐阅读