import axios from 'axios'
Vue.prototype.$http = axios.create({
baseURL: 'http://localhost:3000/api',timeout: 5000
})
以上代码中,我们将axios库赋值给Vue的原型属性$http,并创建了一个axios实例。这个实例的baseURL属性用于设置请求的基础URL,timeout属性用于设置请求的超时时间,可以根据实际需要进行配置。
接下来,我们可以在组件中使用created生命周期函数发送查询请求。比如,我们可以创建一个NameList组件,用于展示用户姓名列表。在这个组件的created生命周期函数中,我们可以调用axios库发送HTTP请求,并将响应数据赋值给组件的data属性,如下所示:
export default {
name: 'NameList',data () {
return {
names: []
}
},created () {
this.$http.get('/names')
.then(response => {
this.names = response.data
})
.catch(error => {
console.log(error)
})
}
}
以上代码中,我们使用axios库的get方法向服务器发送了一个GET请求,请求的URL为'/names',这个URL指向的是服务器的名字列表接口。然后,我们使用Promise的then方法处理响应数据,将响应数据赋值给组件的data属性names。如果请求失败,则使用catch方法打印错误信息。
最后,我们在模板中使用v-for指令展示姓名列表。模板代码如下所示:
<template>
<div class="name-list">
<ul>
<li v-for="name in names" :key="name.id">{{ name.name }}</li>
</ul>
</div>
</template>
以上模板使用v-for指令循环遍历names数组,并使用:key属性指定循环的唯一标识符为name.id,最后展示name.name。
总之,在Vue项目中实现查询功能需要使用axios库发送HTTP请求,并使用Promise处理响应数据。可以将查询请求放在组件的created生命周期函数中发送,然后将响应数据赋值给组件的data属性,最后在模板中使用v-for指令展示数据。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。