JavaScript
-
Promise 프로미스는 자바스크립트 비동기 처리에 사용되는 객체 프로미스는 주로 서버에서 받아온 데이터를 화면에 표시할 때 사용합니다. 일반적으로 웹 어플리케이션을 구현할 때 서버에서 데이터를 요청하고 받아오기 위해 사용 Promise를 사용하지 않고 일반 ajax 코드 function getData(callbackFunc){ $.get('url 주소', function(response){ callbackFunc(response); }) } getData(function(tableData){ console.log(tableData); }); 위 내용을 Promise 로 사용 function getData(callback){ return new Promise(function(resolve, rej..
PromisePromise 프로미스는 자바스크립트 비동기 처리에 사용되는 객체 프로미스는 주로 서버에서 받아온 데이터를 화면에 표시할 때 사용합니다. 일반적으로 웹 어플리케이션을 구현할 때 서버에서 데이터를 요청하고 받아오기 위해 사용 Promise를 사용하지 않고 일반 ajax 코드 function getData(callbackFunc){ $.get('url 주소', function(response){ callbackFunc(response); }) } getData(function(tableData){ console.log(tableData); }); 위 내용을 Promise 로 사용 function getData(callback){ return new Promise(function(resolve, rej..
2021.10.27 -
Vue 라이프사이클이란 Vue 인스턴스가 생성된 후 화면에 보여지고 사라지기까지의 단계 - 종류 1. beforeCreate 2. created 3. beforeMount 4. mounted 5. beforeUpdate 6. updated 7. beforeDestroy 8. destroyed * beforeCreate : 가장먼저 실행되는 beforeCreate, Vue 인스턴스가 초기화 된 직후에 발생한다. : 컴포넌트가 DOM에 추가되기도 전이어서 this.$el에 접근할 수 없다. : data, event, watcher에도 접근하기 전이라 data(), method: {} 에도 접근할 수 없다. ex) * created : data를 반응형으로 추적가능, computed, metho..
Vue 라이프사이클Vue 라이프사이클이란 Vue 인스턴스가 생성된 후 화면에 보여지고 사라지기까지의 단계 - 종류 1. beforeCreate 2. created 3. beforeMount 4. mounted 5. beforeUpdate 6. updated 7. beforeDestroy 8. destroyed * beforeCreate : 가장먼저 실행되는 beforeCreate, Vue 인스턴스가 초기화 된 직후에 발생한다. : 컴포넌트가 DOM에 추가되기도 전이어서 this.$el에 접근할 수 없다. : data, event, watcher에도 접근하기 전이라 data(), method: {} 에도 접근할 수 없다. ex) * created : data를 반응형으로 추적가능, computed, metho..
2021.10.27 -
Actions : Mutations에는 동기적, 순차적 로직들만 선언하고 Actions에는 비동기 로직들을 선언 - Actions 등록 Vuex에 Actions를 등록하는 방법은 다른 속성과 유사하다. // src/store/store.js import Vue from 'vue' import Vuex from 'vuex' Vue.use(Vuex) export const store = new Vuex.Store({ mutations: { addCounter: function(state, payload){ return state.counter++; } }, actions: { addCounter: function(context) { // commit은 mutations 를 호출할때 사용하는 키워드..
Vue Store(Vuex) - ActionsActions : Mutations에는 동기적, 순차적 로직들만 선언하고 Actions에는 비동기 로직들을 선언 - Actions 등록 Vuex에 Actions를 등록하는 방법은 다른 속성과 유사하다. // src/store/store.js import Vue from 'vue' import Vuex from 'vuex' Vue.use(Vuex) export const store = new Vuex.Store({ mutations: { addCounter: function(state, payload){ return state.counter++; } }, actions: { addCounter: function(context) { // commit은 mutations 를 호출할때 사용하는 키워드..
2021.10.27 -
Mutations 란 : Vuex의 데이터 state의 값을 변경하는 로직들을 의미 * Getters와 차이점은 1. 인자를 받아 Vuex에 넘겨줄 수 있다. 2. computed가 아닌 methods에 등록 * Actions와 차이점 1. Mutations는 동기적 로직 2. Actions는 비동기적 로직 예) return this.$store.state.counter++; 위 내용처럼 동시에 여러사람이 카운터값을 변경했을때 어느 컴포넌트에서 변경했는지 추적하기 어렵기때문에 안티패턴이 된다. - Mutations 등록 // src/store/store.js import Vue from 'vue' import Vuex from 'vuex' Vue.use(vuex) export const s..
Vue Store(Vuex) - MutationsMutations 란 : Vuex의 데이터 state의 값을 변경하는 로직들을 의미 * Getters와 차이점은 1. 인자를 받아 Vuex에 넘겨줄 수 있다. 2. computed가 아닌 methods에 등록 * Actions와 차이점 1. Mutations는 동기적 로직 2. Actions는 비동기적 로직 예) return this.$store.state.counter++; 위 내용처럼 동시에 여러사람이 카운터값을 변경했을때 어느 컴포넌트에서 변경했는지 추적하기 어렵기때문에 안티패턴이 된다. - Mutations 등록 // src/store/store.js import Vue from 'vue' import Vuex from 'vuex' Vue.use(vuex) export const s..
2021.10.27 -
main.js import Vue from 'vue' import App from './App' import router from './router' //아래의 /src/router/index.js new Vue({ el: '#app', router, store, render: h => h(App) }) * /src/router/index.js (vue-cli를 사용하고 있을때 가정) import Vue from 'vue' import VueRouter from 'vue-router' Vue.use(VueRouter) // vue-router를 사용하기 위한 설정 import CustomerRouter from './modules/menu/customer' //아래의 customer.js ..
this.$router (vue-router 설정까지 포함)main.js import Vue from 'vue' import App from './App' import router from './router' //아래의 /src/router/index.js new Vue({ el: '#app', router, store, render: h => h(App) }) * /src/router/index.js (vue-cli를 사용하고 있을때 가정) import Vue from 'vue' import VueRouter from 'vue-router' Vue.use(VueRouter) // vue-router를 사용하기 위한 설정 import CustomerRouter from './modules/menu/customer' //아래의 customer.js ..
2021.10.27 -
상위에서 하위컴포넌트로 데이터 전달( 동적 props) props를 사용하면 상위 컴포넌트에서 하위 컴포넌트로 데이터를 전달할 수 있다. //하위 컴포넌트 detail.vue //상위 컴포넌트 contractDetail.vue //contractDetail에게 보내는 상위 컴포넌트 //list.vue this.$router.push({ name: 'contract_detail', path: 'contractDetail', params: { seq: seq }}) $router.push를 사용하여 router로 parmas의 값을 던진다. //contract.js router 파일 { path: 'contractDetail/:seq', hidden: true, component: () =..
상위 및 하위 컴포넌트 데이터 전달(props)상위에서 하위컴포넌트로 데이터 전달( 동적 props) props를 사용하면 상위 컴포넌트에서 하위 컴포넌트로 데이터를 전달할 수 있다. //하위 컴포넌트 detail.vue //상위 컴포넌트 contractDetail.vue //contractDetail에게 보내는 상위 컴포넌트 //list.vue this.$router.push({ name: 'contract_detail', path: 'contractDetail', params: { seq: seq }}) $router.push를 사용하여 router로 parmas의 값을 던진다. //contract.js router 파일 { path: 'contractDetail/:seq', hidden: true, component: () =..
2021.10.27