vue 2.0 从接口中获取数据
<template> <div id=\"admins\"> <h1>I am a title.</h1> <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接口中获取数据,组件开发,路由配置方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
© 版权声明
THE END
暂无评论内容