fix : vuex ADD and signup test

This commit is contained in:
kms
2022-11-18 00:29:44 +09:00
parent 81655e7509
commit f25e02777f
5 changed files with 79 additions and 22 deletions

View File

@@ -16,7 +16,8 @@
"path": "^0.12.7",
"request": "^2.88.2",
"vue": "^3.2.41",
"vue-router": "^4.0.13"
"vue-router": "^4.0.13",
"vuex": "^4.0.2"
},
"devDependencies": {
"@vitejs/plugin-vue": "^3.2.0",
@@ -3037,6 +3038,17 @@
"typescript": "*"
}
},
"node_modules/vuex": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/vuex/-/vuex-4.0.2.tgz",
"integrity": "sha512-M6r8uxELjZIK8kTKDGgZTYX/ahzblnzC4isU1tpmEuOIIKmV+TRdc+H4s8ds2NuZ7wpUTdGRzJRtoj+lI+pc0Q==",
"dependencies": {
"@vue/devtools-api": "^6.0.0-beta.11"
},
"peerDependencies": {
"vue": "^3.0.2"
}
},
"node_modules/which": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
@@ -5246,6 +5258,14 @@
"@volar/vue-typescript": "1.0.9"
}
},
"vuex": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/vuex/-/vuex-4.0.2.tgz",
"integrity": "sha512-M6r8uxELjZIK8kTKDGgZTYX/ahzblnzC4isU1tpmEuOIIKmV+TRdc+H4s8ds2NuZ7wpUTdGRzJRtoj+lI+pc0Q==",
"requires": {
"@vue/devtools-api": "^6.0.0-beta.11"
}
},
"which": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",

View File

@@ -17,7 +17,8 @@
"path": "^0.12.7",
"request": "^2.88.2",
"vue": "^3.2.41",
"vue-router": "^4.0.13"
"vue-router": "^4.0.13",
"vuex": "^4.0.2"
},
"devDependencies": {
"@vitejs/plugin-vue": "^3.2.0",

View File

@@ -1,7 +1,8 @@
import { createApp } from 'vue'
import App from './App.vue'
import router from "./router";
import store from "./store";
const app = createApp(App);
app.use(router);
app.use(router).use(store);
app.mount('#app');

View File

@@ -0,0 +1,29 @@
import axios from "axios";
import { createStore } from 'vuex';
const url = import.meta.env.VITE_BASE_URL;
export default createStore({
state: {
token: localStorage.getItem("token") || '',
username: localStorage.getItem("username") || '',
},
mutations: {
setUsername(state, username){
state.username = username;
},
setToken(state, token){
state.token = token;
},
},
actions: {
REGISTER({commit},{user}){
return axios.post(url+'/api/users',{
user
}).then(response =>{
console.log(response)
})
}
},
})

View File

@@ -44,6 +44,7 @@
import axios from "axios";
import router from "@/router";
import {reactive, ref} from "vue";
import { useStore } from "vuex";
export default {
name: "TheRegister.vue",
@@ -51,6 +52,7 @@ export default {
let emailDuplicate = ref(false);
let usernameDuplicate = ref(false);
const store = useStore();
const user = reactive({
username: "",
email: "",
@@ -77,25 +79,29 @@ export default {
};
const signup = () => {
const url = import.meta.env.VITE_BASE_URL;
axios.post(url+'/api/users',{
user
})
.then(response => {
window.localStorage.setItem("token",response.data.user.token);
allHideError();
router.push("/");
})
.catch(error =>{
const code = error.response.data.errors.code;
if(code == "DUPLICATE_EMAIL_USERNAME"){
showEmailUsernameError();
}else if(code == "DUPLICATE_EMAIL"){
showEmailError();
}else if(code == "DUPLICATE_USERNAME"){
showUsernameError();
}
})
console.log(store.state)
store.commit('REGISTER',user)
// axios.post(url+'/api/users',{
// user
// })
// .then(response => {
// window.localStorage.setItem("token",response.data.user.token);
// allHideError();
// router.push("/");
// })
// .catch(error =>{
// const code = error.response.data.errors.code;
// if(code == "DUPLICATE_EMAIL_USERNAME"){
// showEmailUsernameError();
// }else if(code == "DUPLICATE_EMAIL"){
// showEmailError();
// }else if(code == "DUPLICATE_USERNAME"){
// showUsernameError();
// }
// })
}
return { user, emailDuplicate, usernameDuplicate, signup, showEmailUsernameError,showEmailError, showUsernameError, allHideError }