vue-自带vue-resource插件实现http请求

安装

本地环境安装路由插件vue-resource:    cnpm install vue-resource --save-dev  

 *没有安装淘宝镜像的可以将 cnpm 替换成 npm

想要安装的可以看这篇文章http://www.cnblogs.com/padding1015/p/7162024.html,(打开搜索  镜像  即可跳转到对应位置)

 

配置

 

1.引用

main.js中用import引入进来:

1
import VueResource from 'vue-resource'

* 注意这里VueResource是自定义的名字。下边注册的时候会用到

 

2.注册

同样,main.js中注册,同vue-router

1
Vue.use(VueResource)

  

3.配置

直接在对应页面的created钩子函数配置即可:

1
2
3
4
5
6
created() {
    this.$http.get("http://jsonplaceholder.typicode.com/todos")
    .then((data) => {
        // console.log(data)
        this.arrs = data.body;
})

  链接是数据接口的地址,arrs是在本页面的data函数中定义的空对象,data.body是拿到的数据存放的地方。

 

4. 使用数据

根据拿到的数据结构和内容对应渲染

页面中直接渲染使用:

1
2
3
4
5
6
<li v-for="item in arrs" v-on:click="item.completed = ! item.completed">
    <!-- {{item}} -->
    <span class="id">{{item.userId}} </span>
    <span class="title">{{item.title}}</span>
    <span class="completed" v-show="item.completed">选中</span>
</li>

  

 

用到vue-resource的页面代码参考:

复制代码
 1 <template>
 2     <div class="app-cont">
 3             <div class="vue-resource">
 4             <h3>获取其他地址里的json数据并进遍历</h3>
 5             <ul>
 6                 <li v-for="item in arrs" v-on:click="item.completed = ! item.completed">
 7                     <!-- {{item}} -->
 8                     <span class="id">{{item.userId}} </span>
 9                     <span class="title">{{item.title}}</span>
10                     <span class="completed" v-show="item.completed">选中</span>
11                 </li>
12             </ul>
13         </div>
14     </div>
15 </template>
16 <script>
17     export default{
18         name: "app-cont",
19         data () {
20             return {
21                 arrs:{}
22             }
23         },
24         methods: {
25         },
26         // 页面加载之前,用created钩子函数-获取网页数据
27         created() {
28             this.$http.get("http://jsonplaceholder.typicode.com/todos")
29             .then((data) => {
30                 // console.log(data)
31                 this.arrs = data.body;
32             })
33         }
34     }
35 </script>
36 <style scoped>
37     h2{
38         margin: 0;
39         padding: 10px 0;
40         background: #f5f5f5;
41     }
42     ul{
43         display: flex;
44         flex-wrap: wrap;
45         margin: 0 auto; 
46         padding: 10px 0;
47     }
48     li{
49         position: relative;
50         flex-grow: 1;
51         flex-basis: 200px;
52         text-align: center;
53         padding: 30px;
54         margin: 5px;
55         border: 2px solid Lightgreen;
56     }
57     li:hover{
58         background: Lightgreen;
59         cursor: pointer;
60     }
61     span{
62         color: #333;
63         font-weight: bold;
64     }
65     .vue-resource{
66         margin: 20px 40px;
67         border: 1px solid Lightgreen;
68         background: #eee;
69     }
70     span{
71         display: block;
72     }
73     span.id{
74         width: 75%;
75         margin: 0 auto 20px;
76         padding: 10px 0;
77         border-bottom: 1px solid Lightgreen;
78     }
79     
80     span.completed{
81         position: absolute;
82     top: -6px;
83     right: 10px;
84         z-index: 999;
85     width: 20px;
86     height: 45px;
87     padding-top: 5px;
88     color: #90ee90;
89     background: #000;
90     }
91 </style>
View Code
复制代码

 

 

 

声明:

  请尊重博客园原创精神,转载或使用图片请注明:

  博主:xing.org1^

  出处:http://www.cnblogs.com/padding1015/

posted @   xing.org1^  阅读(7807)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
点击右上角即可分享
微信分享提示