vue 2.0 从接口中获取数据
<template>
<div id="admins">
<h2>I am a title.</h2>
<a> written by {{ author }} </a>
<div v-for="admin in users">
{{admin.name}}<br>{{admin.password}}
</div>
</div>
</template>
<script type="text/javascript">
import axios from 'axios'
export default {
name: 'admins',
data () {
return {
author: "there is nonthing",
users:[]
}
},
mounted(){
this.getAdminList()
},
methods:{
getAdminList(){
var vm=this;
axios.get('/api/admins')
.then(function(response){
vm.users=response.data
})
}
}
}
</script>
<style>
</style>
解决axios发起http请求遇到跨域的问题
修改 config/index.js
proxyTable: {
'/api': {
target: 'http://127.0.0.1:8080',//设置你调用的接口域名和端口号 别忘了加http
changeOrigin: true,
pathRewrite: {
'^/api': ''//这里理解成用‘/api'代替target里面的地址,后面组件中我们掉接口时直接用api代替 比如我要调用'http://40.00.100.100:3002/user/add',直接写‘/api/user/add'即可
}
}
},
配置router
new Router({
mode:'history',
base:__dirname,
routes: [
{
path: '/HelloWorld',
name: 'HelloWorld',
component: HelloWorld
},
{
path: '/admins',
name: 'admins',
component: admins
}
]
})
加载组件
import admins from '@/components/HelloWorld'
export default {
name: 'App',
data () {
return {
Msg: "there is nonthing",
seen:false
}
},
componets:{
HelloWorld
}
}
心得:vue相当于 和可以自定义html中的标签 和 属性。
在开发过程中,首先容易出现的是标点符号问题,其次是缺少引用的js,或者组件。
感觉看视频中的写法和网络上流传的写法有些地方差别很大,特别是调用http接口获取数据,还是参考网上使用axios解决跨域问题,比较好,此外,官网视频中使用的是在create里面发请求获取数据,但是会报错,使用mounted不会报错。当然使用npm进行管理的话,首先要了解一下整个项目的目录结构。了解完之后再进行开发,才会避免摸不着头脑的情况
以上这篇vue2.0 获取从http接口中获取数据,组件开发,路由配置方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持亿速云。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。