亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

找到更好的方法來查看對象是否已填充字段

找到更好的方法來查看對象是否已填充字段

森林海 2021-06-07 17:54:41
我在 Vue 中得到了過濾器。模板:<b-button v-if="filterFilled()" @click="clearFilter">    Clear</b-button>數據:data () {      return {        filter: {          price_from: '',          price_to: '',          surface_from: '',          surface_to: '',          floor: '',          type: '',          structure: '',        },      }    },我檢查的方法是過濾器臟了:filterFilled(){        return (this.filter.price_from || this.filter.price_to || this.filter.surface_to || this.filter.surface_from ||          this.filter.floor || this.filter.type || this.filter.structure)      },這工作正常,但我的問題是,是否存在更好的方法來詢問對象是否已填充道具?
查看完整描述

2 回答

?
MMTTMM

TA貢獻1869條經驗 獲得超4個贊

您可以使用以下方法檢查是否this.filter至少有一個truthy值some


filterFilled() {

  return Object.values(this.filter).some(v => v)

}


查看完整回答
反對 回復 2021-06-11
?
幕布斯7119047

TA貢獻1794條經驗 獲得超8個贊

對于檢查組件中數據的方法,您通常應該更喜歡計算屬性而不是方法,因為它們的性能更高,并且僅在其某些依賴項更改時才調用:


...


data () {

      return {

        filter: {

          price_from: '',

          price_to: '',

          surface_from: '',

          surface_to: '',

          floor: '',

          type: '',

          structure: '',

        },

      }

    },

  computed: {

     filterFilled() {

       // as in @adiga answer, which is great

       return Object.values(this.filter).some(v => v);

     }

  }


查看完整回答
反對 回復 2021-06-11
  • 2 回答
  • 0 關注
  • 148 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號