Vue 要实现异步加载需要使用到 vue-resource 库。
1.GET请求
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>GET</title>
<script src="https://cdn.staticfile.org/vue/2.4.2/vue.min.js"></script>
<script src="https://cdn.staticfile.org/vue-resource/1.5.1/vue-resource.min.js"></script>
</head>
<body>
<div id="box">
<input type="button" @click="get()" value="点我异步获取数据(Get)">
</div>
<script type = "text/javascript">
window.onload = function(){
var vm = new Vue({
el:'#box',
data:{
msg:'Hello World!',
},
methods:{
get:function(){
//发送get请求
this.$http.get('请求数据的url地址').then(function(res){
//在页面打印请求的url地址中的数据
document.write(res.body);
},function(){
console.log('请求失败处理');
});
}
}
});
};
// 如果需要传递数据,可以使用 this.$http.get('get.php',{params : jsonData}) 格式,第二个参数 jsonData 就是传到后端的数据。
// this.$http.get('get.php',{params : {a:1,b:2}}).then(function(res){
// document.write(res.body);
// },function(res){
// console.log(res.status);
// });
</script>
</body>
</html>
2.POST请求
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>POST</title>
<script src="https://cdn.staticfile.org/vue/2.4.2/vue.min.js"></script>
<script src="https://cdn.staticfile.org/vue-resource/1.5.1/vue-resource.min.js"></script>
</head>
<body>
<div id="box">
<input type="button" @click="post()" value="点我异步获取数据(Post)">
</div>
<script type = "text/javascript">
window.onload = function(){
var vm = new Vue({
el:'#box',
data:{
msg:'Hello World!',
},
methods:{
post:function(){
//发送 post 请求
//地址后面的json就是要发送的数据
this.$http.post('发送数据的url地址',{name:"admin",age:22},{emulateJSON:true}).then(function(res){
document.write(res.body);
},function(res){
console.log(res.status);
});
}
}
});
}
</script>
</body>
</html>