webpack+vuex+axios 跨域请求数据的示例代码


Posted in Javascript onMarch 06, 2018

本文介绍了webpack+vuex+axios 跨域请求数据的示例代码,分享给大家,具体如下:

使用vue-li 构建 webpack项目,修改bulid/config/index.js文件

dev: {
  env: require('./dev.env'),
  port: process.env.PORT || 8080,
  autoOpenBrowser: true,
  assetsSubDirectory: 'static',
  assetsPublicPath: '/',
  proxyTable: {
   '/v2': {
     target: 'http://api.douban.com',
     changeOrigin: true,
     pathRewrite: {
      '^/v2': '/v2'
    } 
   }
  },
 }

在action.js 中想跨域请求

设置action.js:

import axios from 'axios'

export const GET_IN_THEATERS = ({
 dispatch,
 state,
 commit
}) => {
 axios({
  url: '/v2/movie/in_theaters'
 }).then(res => {
  commit('in_theaters', res.data)
 })
}

组件内使用:

<template>
  <div class="movie-page">
    <ul class="clearfix">
      <movies-item v-for="(item,index) in movie_list" :key="index" :movie="item"></movies-item>
    </ul>
  </div>
</template>
<script>
import {mapState, mapActions, mapGetters} from 'vuex';
import MoviesItem from "./movie-item";
export default {
  data () {
    return {
      
    }
  },
  components: {
    MoviesItem
  },
  computed: {
    ...mapState({
      movie_list: state => {
        return state.in_theaters.subjects
      }
    })
  },
  methods: {
    
  },
  created () {
    this.$store.dispatch('GET_IN_THEATERS')
  },
  mounted () {
  }
}
</script>
<style lang="scss">
@import "./../../assets/reset.scss";
@import "./../../assets/main.scss";
.movie-page{
  padding: 0 rem(40);
}
</style>

在组件内想跨域

在main.js设置:

import axios from 'axios'
// 将 axios 改写为 Vue 的原型属性,使在其它的组件中可以使用 axios
Vue.prototype.$axios = axios

在组件内设置:

<template>
  <div class="movie-page">
    <ul class="clearfix">
      <movies-item v-for="(item,index) in movie_list" :key="index" :movie="item"></movies-item>
      
    </ul>
  </div>
</template>
<script>
import MoviesItem from "./movie-item";
export default {
  data () {
    return {
      movie_list: []
    }
  },
  components: {
    MoviesItem
  },
  computed: {
    
  },
  methods: {
  },
  created () {
    
  },
  mounted () {
    this.$axios.get('/v2/movie/in_theaters').then(res => {
      this.movie_list = res.data.subjects
    }, res => {
      console.infor('error')
    })
  }
}
</script>
<style lang="scss">
@import "./../../assets/reset.scss";
@import "./../../assets/main.scss";
.movie-page{
  padding: 0 rem(40);
}
</style>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
发一个自己用JS写的实用看图工具实现代码
Jul 26 Javascript
基于jquery的button默认enter事件(回车事件)。
May 18 Javascript
JavaScript面向对象设计二 构造函数模式
Dec 20 Javascript
js单例模式详解实例
Nov 21 Javascript
JS获取select-option-text_value的方法
Dec 26 Javascript
js取模(求余数)隔行变色
May 15 Javascript
js中最容易被忽视的事件问题大总结
May 15 Javascript
原生js实现放大镜
Feb 20 Javascript
你应该知道的几类npm依赖包管理详解
Oct 06 Javascript
学习React中ref的两个demo示例
Aug 14 Javascript
详解vue中移动端自适应方案
May 05 Javascript
Vue 通过公共字段,拼接两个对象数组的实例
Nov 07 Javascript
vue中本地静态图片路径写法
Mar 06 #Javascript
webpack配置导致字体图标无法显示的解决方法
Mar 06 #Javascript
网页爬虫之cookie自动获取及过期自动更新的实现方法
Mar 06 #Javascript
React BootStrap用户体验框架快速上手
Mar 06 #Javascript
基于vue打包后字体和图片资源失效问题的解决方法
Mar 06 #Javascript
详谈vue+webpack解决css引用图片打包后找不到资源文件的问题
Mar 06 #Javascript
解决vue+webpack打包路径的问题
Mar 06 #Javascript
You might like
PHP技术开发技巧分享
2010/03/23 PHP
PHP写杨辉三角实例代码
2011/07/17 PHP
PHP中使用asort进行中文排序失效的问题处理
2014/08/18 PHP
nginx+thinkphp下解决不支持pathinfo模式
2015/07/01 PHP
yii框架redis结合php实现秒杀效果(实例代码)
2017/10/26 PHP
微信公众平台开发教程⑥ 微信开发集成类的使用图文详解
2019/04/10 PHP
仅用[]()+!等符号就足以实现几乎任意Javascript代码
2010/03/01 Javascript
jQuery数据缓存功能的实现思路及简单模拟
2013/05/27 Javascript
js实现文本框中焦点在最后位置
2014/03/04 Javascript
JS实现鼠标箭头变成一个燃烧烛光效果的方法
2015/02/28 Javascript
JS实现为表格动态添加标题的方法
2015/03/31 Javascript
JavaScript面向对象的实现方法小结
2015/04/14 Javascript
jQuery Ajax实现跨域请求
2017/01/21 Javascript
原生JS实现图片无缝滚动方法(附带封装的运动框架)
2017/10/01 Javascript
Vuex的API文档说明详解
2020/02/05 Javascript
python中Genarator函数用法分析
2015/04/08 Python
用Python实现斐波那契(Fibonacci)函数
2016/03/25 Python
关于python的list相关知识(推荐)
2017/08/30 Python
Python实现针对json中某个关键字段进行排序操作示例
2018/12/25 Python
Django认证系统实现的web页面实现代码
2019/08/12 Python
python3光学字符识别模块tesserocr与pytesseract的使用详解
2020/02/26 Python
css3设置box-pack和box-align让div里面的元素垂直居中
2014/09/01 HTML / CSS
新电JAVA笔试题目
2014/08/31 面试题
医生实习工作总结的自我评价
2013/09/27 职场文书
建筑专业毕业生推荐信
2013/11/21 职场文书
怎样写好自我鉴定
2013/12/04 职场文书
新闻学专业大学生职业生涯规划范文
2014/03/02 职场文书
小学生倡议书范文
2014/05/13 职场文书
新农村建设汇报材料
2014/08/15 职场文书
2014教师年度思想工作总结
2014/11/10 职场文书
公司员工体检通知
2015/04/21 职场文书
地球上的星星观后感
2015/06/02 职场文书
2015年除四害工作总结
2015/07/23 职场文书
MySQL之MyISAM存储引擎的非聚簇索引详解
2022/03/03 MySQL
python+opencv实现目标跟踪过程
2022/06/21 Python
前端传参数进行Mybatis调用mysql存储过程执行返回值详解
2022/08/14 MySQL