安裝Vuex
1 | npm install vuex@next --save |
main.js引入vuex
1 | import Vuex from 'vuex' |
新增store/index.js
1 | import Vue from 'vue' |
單一狀態樹,頁面調用msg
1 | <template> |
modules模組概念
新增store/modules/values.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33import axios from "axios"
export default {
// actions, mutations, getters 是屬於區域變數
namespaced: true,
state: {
},
actions: {
getDayObjects(context) {
const api = `${process.env.APIPATH}/api/Teacher/LoadTeacherOpenClass`;
axios.post(api, raw, {
headers: { 'Content-Type': 'application/json', 'Accept': 'application/json', 'Authorization': `Bearer ${process.env.TOKEN}` }
})
.then((res) => {
if (res.data.IsSuccess) {
context.commit('DAYOBJECTS', res.data.DayObjects);
}
})
.catch((error) => {
console.log(error);
})
}
},
mutations: {
DAYOBJECTS(state, payload) {
state.DayObjects = payload;
},
}
getters: {
DayObjects: state => state.DayObjects,
}
}
新增store/index.js
1 | import Vue from 'vue' |
單一狀態樹,頁面調用msg
1 | <template> |