四、Vue CLI-异步请求(axios)
一、模块的安装
npm install axios --save
#--save可以不用写
如图:
二、配置main.js
import axios from 'axios'
Vue.prototype.$axios = axios;
如图:
三、简单使用示例
页面加载时执行:
<template>
<div class="header">{{title}}</div>
</template> <script>
//当前组件的脚本
export default{
// 当前组件的名称
name:"test", //非必填项,则自动以文件名为主
data(){
return {//当前组件中所有的数据 title:'猫眼电影' };
},methods:{ //当前组件中所有的函数 //普通的方法
xx:function(){
alert("调用普通方法");
} },created()
{
window.console.log("页面加载完毕之前执行,执行顺序:父组件-子组件");
this.xx(); },mounted()
{
window.console.log("页面加载完毕之前执行,执行顺序:子组件-父组件"); }
}
</script> <style>
.header{
height: 1.25rem;
line-height: 2.5;
background: #e54847;
color: #fff;
text-align: center;
font-size: 0.5rem;
}
</style>
点击按钮执行:
<template>
<div>
<div v-show="show">HelloWorld</div>
<button @click="handleClick">Click</button>
<ul>
<li v-for="(item,index) of list" :key="index">{{item}}</li>
</ul>
</div>
</template>
<script>
export default {
name: "test",
data() {
return {
show: true,
list: [1, 2, 3]
};
},
methods: {
handleClick: function() {
this.show = !this.show;
}
}
};
</script>
异步请求的
代码如下:
<template>
<div>
<div v-show="show">HelloWorld</div>
<button @click="handleClick">Click</button>
<ul>
<li v-for="(item,index) of list" :key="index">{{item}}</li>
</ul>
</div>
</template>
<script>
export default {
name: "test",
data() {
return {
show: true,
list: [1, 2, 3]
};
},
methods: {
handleClick: function() { this.$axios({
url: 'http://wthrcdn.etouch.cn/weather_mini?citykey=101010100', // 后台接口
method: 'get', // 请求方式
}).then(response => { // 请求成功
window.console.log('请求成功');
window.console.log(response.data);
this.course_ctx = response.data; // 将后台数据赋值给前台变量完成页面渲染
}).catch(error => { // 请求失败
window.console.log('请求失败');
window.console.log(error);
}) }
}
};
</script>
四、路由跳转与参数
可以使用 this.$router.push(location) 来更改url,完成跳转
代码如下:
接受页面:
<template>
<div>
<div>Test2页面</div>
<div>{{this.$route.params.user}}</div>
<button @click="write">打印接收的参数</button>
</div>
</template>
<script>
export default {
name:"test2",
data(){
return {
status:true
}
},
methods:{
write(){
window.console.log(this.$route.params.user);
}
}
}
</script>
<style>
</style>
点击跳转页面
<template>
<div>
<div v-show="show">HelloWorld</div>
<button @click="handleClick">Click</button>
<ul>
<li v-for="(item,index) of list" :key="index">{{item}}</li>
</ul>
</div>
</template>
<script>
export default {
name: "test",
data() {
return {
show: true,
list: [1, 2, 3]
};
},
methods: {
handleClick: function() { //this.$router.push('/test2') this.$router.push('/test2?user="wise"') //接受页面 this.$route.query.user /*this.$router.push({
name:'test2',
params:{
user:"wise"
}
})*/ }
}
};
</script>
四、Vue CLI-异步请求(axios)的更多相关文章
- vue处理异步请求
vue 处理异步请求 项目中需要 先调一个接口去取到人员编号,再去调另一个借口,人员编号作为参数才能去请求数据 用setTimeout 其实也可以,先new了一个promise对象 ,把请求放在里面, ...
- vue中异步请求渲染问题(swiper不轮播)(在开发过程中遇到过什么问题、踩过的坑)
问题描述: 用vue封装一个swiper组件的时候,发现轮播图不能轮播了. 原因: 异步请求的时间远大于生命周期执行的时间,mounted初始化DOM时数据未返回,渲染数据是空数组,导致轮播图的容器层 ...
- vue发送ajx请求 axios
一. 简介 1.vue本身不支持发送AJAX请求,需要使用vue-resource(vue1.0版本).axios(vue2.0版本)等插件实现 2.axios是一个基于Promise的HTTP请求客 ...
- 在双重for循环内部使用async异步请求axios中遇到的问题
在methods中的方法 async getPro () { let _this = this let newArr = [] await axios.get(`api/v1/dailyProTbms ...
- 记一次vue 普通异步请求微信二进制二维码 乱码 问题解决然后渲染
后端压力大,前端分忧. /*用微信小程序token拿二维码*/ async fetchMINIQRcode({commit,state},params){ var instance = axios.c ...
- 09.1.VUE学习之watch监听属性变化实现类百度搜索栏功能ajax异步请求数据,返回数组
09.1html里 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> < ...
- 09.VUE学习之watch监听属性变化实现类百度搜索栏功能ajax异步请求数据,返回字符串
cmd下安装axios npm install axios 安装好后,会多出node_modules文件夹 思路: 监听data里的word改变时,发送ajax异步请求数据, 把返回的数据赋值给dat ...
- SpringBoot中异步请求和异步调用(看这一篇就够了)
原创不易,如需转载,请注明出处https://www.cnblogs.com/baixianlong/p/10661591.html,否则将追究法律责任!!! 一.SpringBoot中异步请求的使用 ...
- Spring Boot 异步请求和异步调用,一文搞定
一.Spring Boot中异步请求的使用 1.异步请求与同步请求 特点: 可以先释放容器分配给请求的线程与相关资源,减轻系统负担,释放了容器所分配线程的请求,其响应将被延后,可以在耗时处理完成(例如 ...
- Vue+axios的四种异步请求,参数的携带以及接收
Vue中axios发送GET, POST, DELETE, PUT四种异步请求,参数携带和接收问题 web.xml配置如下 1.GET请求 发送GET请求: <!--params是关键字,说明所 ...
随机推荐
- nginx location正则
nginx location正则写法 一个示例: location = / { # 精确匹配 / ,主机名后面不能带任何字符串 [ configuration A ] } location / { # ...
- 一、基础篇--1.2Java集合-Arraylist 与 LinkedList 区别
Arraylist 与 LinkedList 区别 结构上的区别 ArrayList底层实现基于动态数组,LinkedList底层实现基于双向链表. 性能上区别 ArrayList查询快,增删慢 ...
- linux添加新用户
使用root用户adduser yj 后面操作有提示 用这种方法新建的用户会在home下生成用户文件夹
- adb自动化农药金币
本贴仅为记录贴 记录adb 的环境配置及python脚本的交互 1.adb 的下载 通过搜索adb工具即可下载,这里提供一个共享地址https://pan.baidu.com/s/103ix26tZy ...
- global和nonlocal的用法
1 nonlocal声明的变量不是局部变量,也不是全局变量,而是外部嵌套函数内的变量.写在内部嵌套函数里面,它实质上是将该变量定义成了全局变量,它等价于用两个global来定义该变量.只不过用两个gl ...
- C# 虚拟键盘
[DllImport("user32.dll")] public static extern void keybd_event(byte bVk, byte bScan, uint ...
- 内核参数和GRUB&GRUB2
内核允许您使用各种选项运行系统.示例列表https://www.kernel.org/doc/html/v4.14/ad...eters.html 如何为以下项添加选项:_______________ ...
- GET 和 POST 区别?网上多数答案都是错的!
最近在看<HTTP权威指南>这本书,对HTTP协议有了更深一层的了解. 在我们面试过程中关于HTTP协议有两个经典的面试题: 1. 谈谈HTTP中GET与POST的区别. 2. 在浏览器中 ...
- zabbix监控大数据
参考: https://github.com/Staroon/zabbix-hadoop-template 支持监控HDFS.NameNode, YARN ResourceManager, Hive, ...
- Hive-Container killed by YARN for exceeding memory limits. 9.2 GB of 9 GB physical memory used. Consider boosting spark.yarn.executor.memoryOverhead.
Caused by: org.apache.spark.SparkException: Job aborted due to stage failure: Task times, most recen ...