错误“[vuex] 未知操作类型:”与 vuejs
Error "[vuex] unknown action type:" with vuejs
创建了一个名为 room.module.js
的新服务 .js
在我的 Vue 视图中,我在表单提交上有以下事件:
submit: function(e) {
e.preventDefault();
var name = this.$refs.name.value;
var capacity = this.$refs.places.value;
// dummy delay
setTimeout(() => {
// send update request
this.$store.dispatch(CREATE_ROOM, {
"name": name,
"places": capacity
});
}, 2000);
和我的服务 room.module.js
:
// action types
import ApiService from "@/core/services/api.service";
import JwtService from "@/core/services/jwt.service";
export const CREATE_ROOM = "createNewRoom";
// mutation types
export const SET_ROOM_INFO = "setRoomInfo";
const state = {
room_info: {
name: "Room 1",
places: 10,
status: 1
}
};
const getters = {
currentRoomInfo(state) {
return state.room_info;
}
};
const actions = {
[CREATE_ROOM](context, payload) {
if (JwtService.getToken()) {
ApiService.setHeader();
ApiService.put("/room/create", payload).then(({ data }) => {
context.commit(SET_ROOM_INFO, payload);
return data;
});
}
}
};
const mutations = {
[SET_ROOM_INFO](state, room_info) {
state.room_info = room_info;
}
};
export default {
state,
actions,
mutations,
getters
};
但是当我提交表单时,出现以下错误:
[vuex] unknown action type: createNewRoom
我知道我错过了什么,但无法弄清楚是什么。
有任何想法吗?谢谢!
看来需要添加到Vuex商店中了。
创建了一个名为 room.module.js
的新服务 .js
在我的 Vue 视图中,我在表单提交上有以下事件:
submit: function(e) {
e.preventDefault();
var name = this.$refs.name.value;
var capacity = this.$refs.places.value;
// dummy delay
setTimeout(() => {
// send update request
this.$store.dispatch(CREATE_ROOM, {
"name": name,
"places": capacity
});
}, 2000);
和我的服务 room.module.js
:
// action types
import ApiService from "@/core/services/api.service";
import JwtService from "@/core/services/jwt.service";
export const CREATE_ROOM = "createNewRoom";
// mutation types
export const SET_ROOM_INFO = "setRoomInfo";
const state = {
room_info: {
name: "Room 1",
places: 10,
status: 1
}
};
const getters = {
currentRoomInfo(state) {
return state.room_info;
}
};
const actions = {
[CREATE_ROOM](context, payload) {
if (JwtService.getToken()) {
ApiService.setHeader();
ApiService.put("/room/create", payload).then(({ data }) => {
context.commit(SET_ROOM_INFO, payload);
return data;
});
}
}
};
const mutations = {
[SET_ROOM_INFO](state, room_info) {
state.room_info = room_info;
}
};
export default {
state,
actions,
mutations,
getters
};
但是当我提交表单时,出现以下错误:
[vuex] unknown action type: createNewRoom
我知道我错过了什么,但无法弄清楚是什么。
有任何想法吗?谢谢!
看来需要添加到Vuex商店中了。