現在在網站上,經常會發現一些搜索功能,讓用戶可以更方便地找到他想要的內容。今天我們就來講一下如何用Vue實現一個簡易搜索功能。
首先,我們需要在HTML頁面上創建一個輸入框和一個搜索按鈕。輸入框用來輸入搜索內容,搜索按鈕用來觸發搜索功能。代碼如下:
<div id="app"> <input type="text" v-model="searchInput"> <button v-on:click="search">搜索</button> </div>
其中,v-model是Vue提供的雙向綁定指令,用來將輸入框中的內容綁定到Vue組件中的數據。v-on是Vue提供的事件綁定指令,用來監聽搜索按鈕的點擊事件。
接著,我們需要在Vue組件中定義搜索功能。我們可以使用computed屬性,監聽輸入框的變化,實時更新匹配的搜索結果。代碼如下:
Vue.component('search', { template: ` <div> <input type="text" v-model="searchInput"> <button v-on:click="search">搜索</button> <ul> <li v-for="(item, index) in searchResult" :key="index">{{ item }}{ return item.includes(this.searchInput) }) } } }, methods: { search() { console.log(this.searchResult) } } }) new Vue({ el: '#app' })
在這個組件中,我們定義了一個dataList數組,用來存放要搜索的數據,這里為了方便,我們寫死了一些數據。我們使用computed屬性來監聽searchInput的變化,如果輸入框中沒有內容,則返回空數組,如果有內容,則使用filter方法過濾出匹配的結果并返回。在methods中定義了search方法,用來在控制臺輸出搜索結果。
最后,我們需要在Vue實例中使用search組件,并將其掛載到HTML頁面上。代碼如下:
<div id="app"> <search></search> </div>
這樣,我們就完成了一個簡易的搜索功能。當我們在輸入框中輸入內容并點擊搜索按鈕時,控制臺會輸出所有匹配的搜索結果。當我們修改輸入框中的內容時,頁面會實時更新搜索結果。
上一篇c#如何取json數據
下一篇vue 管理異步請求