Vue cli之在组件中使用axios
默认情况下,我们的项目中并没有对axios包的支持,所以我们需要下载安装。
在项目根目录中使用 npm安装包:
1 | npm install axios |
接着在main.js文件中,导入axios并把axios对象 挂载到vue属性中多为一个子对象,这样我们才能在组件中使用。
main.js补充代码:
1 2 3 4 | import axios from "axios"; // 初始化axios对象 Vue.prototype.$http = axios.create(); Vue.config.productionTip = false |
创建Forecast组件:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 | < template > < div > < input type="text" v-model="city"> < button @click="get_weather">获取天气</ button > < table v-if="weather_list.length>1"> < tr > < th >日期</ th > < th >天气</ th > < th >温度</ th > < th >风向</ th > </ tr > < tr v-for="weather in weather_list"> < td >{{weather.date}}</ td > < td >{{weather.type}}</ td > < td >{{weather.low}}~{{weather.high}}</ td > < td >{{weather.fengxiang}}{{weather.fengli|format}}</ td > </ tr > </ table > </ div > </ template > < script > export default { name: "Index", data(){ return { city: "北京", weather_list:[], } }, filters:{ format(content){ return content.replaceAll("<![CDATA[","").replaceAll("]]>",""); } }, methods:{ get_weather(){ // 发送http请求获取天气 this.$http.get("http://wthrcdn.etouch.cn/weather_mini",{ params:{ city: this.city, } }).then(response=>{ console.log(response.data.data.forecast); this.weather_list = response.data.data.forecast; }).catch(error=>{ console.log(error); }) } } } </ script > < style scoped> table{ width: 800px; border-collapse: collapse; } td,th{ border: 1px solid red; } </ style > |
home组件更新为:
效果:
使用的时候,因为本质上来说,我们还是原来的axios,所以也会收到同源策略的影响。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现