色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

vue.js 搜索

錢良釵1年前8瀏覽0評論

有時候我們需要在網站上添加一個搜索功能,方便用戶快速找到自己想要的內容,為此,我們可以使用Vue.js來完成這個搜索功能。

首先,我們需要創建一個Vue實例,然后定義一個data屬性用來存儲我們搜索的內容,代碼如下:

var vm = new Vue({
el: '#app',
data: {
searchText: ''
}
})

接著我們需要編寫一個搜索框,讓用戶可以在里面輸入搜索詞。我們可以使用Vue的v-model指令來實現這一步,代碼如下:

現在,我們已經可以獲取用戶輸入的搜索關鍵字了,接下來需要將這個關鍵字與我們的數據進行匹配,并顯示出匹配結果。這個過程可以通過計算屬性來完成,代碼如下:

  • {{ item }}
var vm = new Vue({ el: '#app', data: { searchText: '', items: ['apple', 'banana', 'orange', 'pear'] }, computed: { matchingItems: function() { return this.items.filter(function(item) { return item.indexOf(this.searchText) !== -1 }.bind(this)) } } })

這樣,我們就完成了一個簡單的搜索功能。

但是,有時候數據比較龐大,我們直接在前端進行搜索會影響性能,這個時候,我們可以使用后端的搜索接口來進行搜索。

我們可以在Vue中使用axios來發起一個異步請求,并在得到結果后將其展示給用戶,代碼如下:

var vm = new Vue({
el: '#app',
data: {
searchText: '',
items: []
},
methods: {
search: function() {
this.items = []
axios.get('/search', {
params: {
searchText: this.searchText
}
}).then(function(response) {
this.items = response.data
}.bind(this))
}
}
})
  • {{ item }}

與此同時,我們需要后端提供一個/search接口,接收前端傳入的searchText參數,并進行相應的搜索操作,返回匹配的結果。

構建搜索功能可能需要的額外的工作量,但是通過Vue.js的靈活性,我們能夠輕松實現前端的搜索功能。