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

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

如何用關鍵字篩選一個vuex獲取的數組

如何用關鍵字篩選一個vuex獲取的數組

嗶嗶one 2018-09-05 11:10:13
需求是,目前有一個數組是通過后端請求獲取數據項 然后mutation到vuex中,然后有個input框需要對數組項中的某個屬性名進行篩選,需要mutation成新的數組,但是input退格為空之后需要恢復到原來的vuex數組,并且篩選完成過程后,可能通過websocket推送會給原來的vuex數組push新的數據項,如果新推送的數據項不符合關鍵字也將被filter掉, 問下這要如何實現。。感覺有點難。     let that = this      if (this.channels) {             return this.channels.filter(function (channel, index) {                     return channel.channelName.toLowerCase().indexOf(that.search.toLowerCase()) !== -1        })      } else {            return []      }原來沒用vuex之前是這樣的算法。。但是現在需要使用vuex了,因為業務多了
查看完整描述

1 回答

?
慕勒3428872

TA貢獻1848條經驗 獲得超6個贊

我的思路是你的vuex始終存儲后端返回的全量數據不要在這去做過濾,當websocket數據過來的時候就是直接在這個數組上push數據了。接下來就是過濾邏輯了,這部分數據其實就是通過input的值篩選vuex中的數據的結果,所以你可以用一個computed屬性,然后在模板中使用這個計算屬性:

computed: {

    filteredChannel () {

        let search = this.search.toLowerCase()

        return (this.channels || []).filter(channel => channel.channelName.toLowerCase().indexOf(search) !== -1)

    }

}


查看完整回答
反對 回復 2018-09-09
  • 1 回答
  • 0 關注
  • 1507 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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