VUE 之 vuex 和 axios
1、Vuex 部分
1.1 Vuex 是专门为vue.js设计的集中式状态管理架构,其实就是将数据存在一个store中,共各个组件共享使用
1.2 配置:
1.2.1 下载:--npm install vuex
1.2.2 导入:import Vuex(这个名字随便起) from "vuex"
1.2.3 使用:Vue.use(Vuex)
1.2.4 实例化仓库对象:new store({ 属性名(state,getters,mutation)})
import Vue from "vue"
import Vuex from "vuex" Vue.use(Vuex); export default new Vuex.Store({
// this.$store.state.name # 这个store是在Vue根实例中注册的store
state: {
name: "xiaodilei"
},
// this.$store.getters.new_name
getters: {
new_name: function (state) {
return state.name + "爆炸了"
},
new_new_name: function (state, getters) {
return getters.new_name + "duang~~"
}
},
mutations: {
change_data: function (state, data) {
// 自己处理change_data事件的
console.log(state.name)
console.log(data)
state.name = data;
}
}
})
1.2.5 在Vue 根实例中注册sotre
new Vue({
el:"#app",
store
})
1.3 获取vuex中的数据
this.$store.state.属性名
this.$store.getters.属性名
1.4改变vuex中的数据
1.4.1 首先组件要想仓库提交事件
this.$store.commit("事件名称",要修改成的结果)
1.4.2 仓库要处理提交的事件
mutations: {
"事件名称": function(state, data){
修改state中的数据
}
}
2、axios部分
2.1 用来发送ajax请求的
2.2 配置:
2.1 下载:npm install axios
2.2 导入:import axios from 'axios'
2.3 加入原型链:Vue.prototype.$axios = axios
2.3 在组件中发送请求
this.$axios.request({
url:'127.0.0.1',
method:get,
data,
headers
}).then(function(data){}).catch(function(data){})
mounted(){
let that = this; 注意this
this.$axios.request({
url: "http://127.0.0.1:8000/demo",
method: "get"
}).then(function (data) {
// do something~~
that.msg = data.data 这里应该用msg的this
console.log(data)
}).catch(function (data) {
// do something~~
})
// this.$axios.get("url",{}).then().catch()
}
2.4 跨域问题
前后端进行连接的时候,由于url的不同,发送了一个option请求,导致出现跨域问题。
这时需要创建一个中间件来解决这个问题
from django.utils.deprecation import MiddlewareMixin class MyCors(MiddlewareMixin):
def process_response(self, request, response): 自定义一个响应头就可以解决
response["Access-Control-Allow-Origin"] = "*"
return response
VUE 之 vuex 和 axios的更多相关文章
- Vue基于vuex、axios拦截器实现loading效果及axios的安装配置
准备 利用vue-cli脚手架创建项目 进入项目安装vuex.axios(npm install vuex,npm install axios) axios配置 项目中安装axios模块(npm in ...
- day 87 Vue学习六之axios、vuex、脚手架中组件传值
本节目录 一 axios的使用 二 vuex的使用 三 组件传值 四 xxx 五 xxx 六 xxx 七 xxx 八 xxx 一 axios的使用 Axios 是一个基于 promise 的 HT ...
- Vue(5)- axios、vuex
一.内容回顾 1.webpack(前端中工作,项目上线之前对整个前端项目优化) - entry:整个项目的程序入口(main.js或index.js): - output:输出的出口: - loade ...
- day 84 Vue学习六之axios、vuex、脚手架中组件传值
Vue学习六之axios.vuex.脚手架中组件传值 本节目录 一 axios的使用 二 vuex的使用 三 组件传值 四 xxx 五 xxx 六 xxx 七 xxx 八 xxx 一 axios的 ...
- vue全家桶router、vuex、axios
main.js import Vue from 'vue' import App from './App' import router from './router' import store fro ...
- 基于Vue+Vuex+Vue-Router+axios+mint-ui的移动端电商项目
第一步:安装Node 1.打开NodeJS的官网,下载和自己系统相配的NodeJS的安装程序,包括32位还是64位一定要选择好,否则会出现安装问题. 下载地址:https://nodejs.org/e ...
- 记一次vue+vuex+vue-router+axios+elementUI开发(三)
项目用到了状态管理工具 Vuex 中文文档:https://vuex.vuejs.org/zh/guide/ 大家都知道,vue中可用props将父组件的数据传递给子组件,但是有个问题,子组件一般不 ...
- Vue(小案例_vue+axios仿手机app)_Vuex优化购物车功能
一.前言 1.用vuex实现加入购物车操作 2.购物车详情页面 3.点击删除按钮,删除购物详情页面里的对应商品 二.主要内容 1.用vuex加入购物车 (1)在src ...
- Vuex、axios、跨域请求处理和import/export的注意问题
一.Vuex 1.介绍 vuex是一个专门为Vue.js设计的集中式状态管理架构. 对于状态,我们把它理解为在data中需要共享给其他组件使用的部分数据. Vuex和单纯的全局对象有以下不同: 1. ...
随机推荐
- Caffe 编译: undefined reference to imencode()
本系列文章由 @yhl_leo 出品,转载请注明出处. 文章链接: http://blog.csdn.net/yhl_leo/article/details/52150781 整理之前编译工程中遇到的 ...
- ecmascript6入门
ECMAScript 6 入门 阮一峰
- 九度oj 题目1207:质因数的个数
题目描述: 求正整数N(N>1)的质因数的个数. 相同的质因数需要重复计算.如120=2*2*2*3*5,共有5个质因数. 输入: 可能有多组测试数据,每组测试数据的输入是一个正整数N,(1&l ...
- HDU——4549M斐波那契数列(矩阵快速幂+快速幂+费马小定理)
M斐波那契数列 Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others) Total Su ...
- [BZOJ1574] [Usaco2009 Jan]地震损坏Damage(贪心 + dfs)
传送门 告诉你一些点不能到达1,由于是双向边,也就是1不能到达那些点 那么从1开始dfs,如果当前点能到达不能到达的点,那么当前点就是损坏的. #include <cstdio> #inc ...
- Java面试通关要点
Java面试通关要点 2018-03-23 梁桂钊 占小狼的博客 占小狼的博客 占小狼的博客 微信号 whywhy_zj 功能介绍 Java进阶技术干货.实践分享,跟着狼哥一起学习JVM.性能调优,欢 ...
- STL中heap用法
#include<cstdio> #include<iostream> #include<algorithm> using namespace std; ]={,, ...
- 洛谷 [P1290] 欧几里得的游戏
SG函数的应用 看到这题就想到了SG函数 那么可以考虑最终情况:一个数是x,另一个是0,那么先手必败(因为上一个人已经得到0了,其实游戏已经结束了) 剩下的情况:一个数n, 一个数m,假设n>m ...
- Laravel 之Artisan
简介: Artisan是Laravel中自带的命令行工具的名称: 由强大的Symfony Console组件驱动的: 提供了一些对应用开发有帮助的命令: 查看所有可用的Artisan的命令 php a ...
- 顿悟:Linux是拿来用的,不是拿来折腾的
Linux是拿来用的,而不是折腾其本身.相信这个道理不少聪明人(实用主义者)都明白,然而总是有那么一群人拿Linux去安装各种发行版.研究Linux命令.配置桌面.美化桌面.研究各种wm/DE.永无止 ...