Vue jsonp解决跨域问题

请求api接口的时候返回响应数据,但是加载不了vue视图,然后我去看看浏览器控制台,原来axios不支持jsonpReturn,就是说需要安装vue-jsonp吧。

安装

在终端器命令:

$ npm install vue-jsonp --save

安装成功显示:

npm WARN ajv-keywords@2.1.1 requires a peer of ajv@^5.0.0 but none is installed. You must install peer dependencies yourself.
+ vue-jsonp@0.1.7
added 1 package in 14.872s

src/main.js中添加:

import VueJsonp from 'vue-jsonp'
Vue.use(VueJsonp)

基本用法如下:

const url = "http://localhost:8888/api/book"
this.$jsonp(url, 传参参数对象{} ).then(json => {
 // 返回数据 json, 返回的数据就是json格式
}).catch(err => {
  console.log(err)
})