使用Ant Design Vue组件库实现百度搜索功能
时间: 2024-06-08 10:05:51 浏览: 180
Ant Design Vue 是使用 Vue 实现的遵循 Ant Design 设计规范的高质量 UI 组件库
首先,需要使用 Ant Design Vue 组件库中的 Input 和 Button 组件。我们可以在页面上放置一个输入框和一个搜索按钮,并绑定相应的事件处理函数。
接着,我们需要调用百度搜索 API 进行搜索。可以使用 axios 库来发送 HTTP 请求,获取搜索结果。具体实现如下:
```vue
<template>
<div>
<a-input v-model="searchText" style="width: 200px; margin-right: 10px;" placeholder="请输入关键词"></a-input>
<a-button type="primary" @click="search">搜索</a-button>
<ul v-if="searchResult">
<li v-for="item in searchResult">
<a :href="item.link" target="_blank">{{ item.title }}</a>
</li>
</ul>
</div>
</template>
<script>
import axios from 'axios';
export default {
data() {
return {
searchText: '',
searchResult: null
};
},
methods: {
search() {
if (!this.searchText) {
return;
}
axios.get('https://www.baidu.com/s', {
params: {
wd: this.searchText
}
}).then((response) => {
const parser = new DOMParser();
const htmlDoc = parser.parseFromString(response.data, 'text/html');
const results = htmlDoc.querySelectorAll('.result');
const searchResult = [];
for (let i = 0; i < results.length; i++) {
const titleEle = results[i].querySelector('.t a');
const link = titleEle.href;
const title = titleEle.innerText.trim();
searchResult.push({ link, title });
}
this.searchResult = searchResult;
});
}
}
};
</script>
```
在上述代码中,我们使用了 axios 库发送 GET 请求,将搜索关键词作为参数传递给百度搜索 API。然后,我们解析返回的 HTML 页面,提取出搜索结果中的标题和链接,并展示在页面上。
需要注意的是,百度搜索 API 的使用需要遵守其相关规定,避免滥用和侵犯他人权益。
阅读全文