VueJS 61

[VueJS] vue-cli와 jwt인증 기능 NuxtJS로 만들어보기 (2)

[VueJS] vue-cli과 jwt인증 기능 NuxtJS로 만들어보기 (1) [VueJS] vue-cli과 jwt인증 기능 NuxtJS로 만들어보기 (1) Vue공부 후 Vue-cli로 웹 프로젝트를 하나 생성하고 jwt 인증을 통한 로그인 및 게시판 데이터 불러오기를 만들었었다. 해당 관련 글은 minu0807.tistory.com/64 [VueJS] vue-cli + vuex + jwt 로그인 기능 구현하.. minu0807.tistory.com 지난번에 토큰 체크 쪽 구현한다고 했었는데. 먼저 로그인을 성공시키고 토큰 저장하는 걸 먼저 해보자. 우선 axios 쪽과 nuxt.config.js를 먼저 손을 봐보자. 기존에 vue-cli에서 할 때 axios의 baseURL 같은걸 vue.config..

VueJS/Nuxt 2021.03.05

[VueJS] vue-cli와 jwt인증 기능 NuxtJS로 만들어보기 (1)

Vue공부 후 Vue-cli로 웹 프로젝트를 하나 생성하고 jwt 인증을 통한 로그인 및 게시판 데이터 불러오기를 만들었었다. 해당 관련 글은 아래 주소를 클릭 minu0807.tistory.com/64 [VueJS] vue-cli + vuex + jwt 로그인 기능 구현하기 공부하기 위해 구매했던 Vue.js 책을 다 읽을 때쯤 회사에서 vue-cli 기반으로 jwt를 이용해서 로그인 기능과 게시판 리스트까지만 구현을 해보라 해서 만들어봤었다. 다른 부분은 다 쉬웠는데 axios minu0807.tistory.com 소스는 깃에 올려두었다. github.com/smw0807/minu_vuejs/tree/master/vue_web/web smw0807/minu_vuejs Vue.js study. Cont..

VueJS/Nuxt 2021.03.04

[VueJS] Nuxt.js 사용해보기

Vue.js를 공부를 공식 홈페이지를 이용해서 조금 맛만 보고 나서 공부를 좀 해보고 싶다는 생각이 들어서 책을 한 권 사서 공부했다. vue-cli를 이용한 웹팩으로 프로젝트를 만드는 것을 기반으로 설명이 있었고, 마지막에 Nuxt.js라는 걸 이용해서 프로젝트를 만드는 게 있었는데 설명이 짧아서 좀 더 찾아봤다. https://kdydesign.github.io/2019/04/10/nuxtjs-tutorial/ [Nuxt.js] 개념부터 설치까지 빠르게 배우기 Vue Application을 만들기 위한 강력한 Framework 인 Nuxt.js에 대해 알아보자.Nuxt.js는 Vue.js 응용 프로그램을 만들기 위한 Framework이며, Vue.js Application을 좀 더 손쉽게 만들 수 있..

VueJS/Nuxt 2021.02.28

[VueJS] vue-cli + vuex + jwt 로그인 기능 구현하기

공부하기 위해 구매했던 Vue.js 책을 다 읽을 때쯤 회사에서 vue-cli 기반으로 jwt를 이용해서 로그인 기능과 게시판 리스트까지만 구현을 해보라 해서 만들어봤었다. 다른 부분은 다 쉬웠는데 axios발생이나 컴포넌트 전환 시 accessToken이 없을 경우 토큰을 재발급 하는 과정이 좀 오래 걸렸다. 구글링을 통해 많은 곳에서 참고했지만 원하는 결과가 잘 나오지 않아서 생각보다 많은 시간을 소비했다. 목표 1. vue-cli와 vuex 기반의 웹 애플리케이션에 JWT(Json Web Token)을 이용하여 로그인 기능 구현 2. 로그인시 토큰 값을 쿠키(Cookies)에 저장할 것 3. 토큰 저장시 유효기간이 1분인 accessToken과 1시간인 refreshToken 이렇게 2개의 토큰을 ..

VueJS 2021.02.27

[VueJS] 컴포넌트 props와 리터럴속성 그리고 검증

공부하는데 자꾸 까먹고 볼 때마다 헷갈려서 작성하면서 다시 외우려고 작성해둠 props는 전달 받을 속성 (위에선 txt1과 txt2가 전달받을 속성) template안에 {{txt1}}은 전달 받은 txt1의 값이 표기됨, {{txt2}}는 txt2의 값 여기서 txt1="asdf'는 입력한 값 그대로 txt1로 값을 전달함 v-bind:txt2="text1"은 부모 인스턴스에 있는 데이터 text1의 값을 가져와서 전달함 (:txt2="text1"로도 쓸 수 있음) v-bind:txt2="text1"말고 다른 값을 선언하면 부모 인스턴스에 선언된 게 text1 말곤 없기 때문에 에러 출력 그리고 이 리터럴 방식은 문자열로만 전달된다. text1="1111"로 넘기면 정수 값 1111로 오는 게 아니라..

VueJS 2021.01.27

[VueJS] Component template requires a root element, rather than just text.

"Component template requires a root element, rather than just text." 컴포넌트를 작성할 때 템플릿 안에 있는 문자에 태그로 감싸지 않으면 발생하는 에러. 이렇게 컴포넌트 template안에 태그 없이 작성하면 아래와 같은 에러가 발생한다. 렌더링이 되지 않는다. 아래 코드와 같이 태그를 넣어주면 된다. 난 예시로 p태그를 넣었고 본인이 사용 용도에 맞게 작성하면 된다. , 등등

VueJS 2021.01.24

[VueJS] v-for

v-for는 객체, 배열, 컴포넌트와 함께 사용할 수 있다. 기본 사용 방법으로는 v-for"item in items" 의 형태 items는 순환하려는 배열 데이터의 출처를 의미하고, item은 순환되는 요소의 별칭이다. {{item}} {{num}} ✔ 이런식으로도 사용할 수 있다. 이 외에 v-for="(value, index) in items" v-for="(value, name, index) in items" 이렇게도 사용할 수 있다. {{idx}} : {{val}} [{{idx}}] {{name}} : {{val}}

VueJS 2021.01.23

[VueJS] v-if, v-else-if, v-else 사용시 알아둘 것

이것만 알아두고 조심하면 된다. v-if 이후에 v-else나 v-else-if를 사용할 거라면 v-if 이후에 바로 써야 한다. 중간에 다른 요소가 있으면 인식하지 못한다. 아래 코드는 잘못된 예이다. {{ count }}번 클릭!! 버튼 비활성화! add 현재 클릭 횟수 : {{ count }} 버튼을 클릭해보세요! 위 코드를 보면 지금 p태그에 v-if, v-else-if, v-else를 각각 사용했는데 v-if 다음에 바로 v-else-if가 아닌 button 태그가 들어가 있다. 그럼 다음과 같은 에러가 발생한다. 정상적인 방법으로 하면 에러 출력없이 잘 된다. {{ count }}번 클릭!! 버튼 비활성화! 현재 클릭 횟수 : {{ count }} 버튼을 클릭해보세요! add 정상 출력 후 각..

VueJS 2021.01.23

[VueJS] v-model, v-once

v-model (양방향 데이터 바인딩) 양방향 데이터 바인딩으로 주로 폼과 입력을 다룰 때 사용한다. 모델이 업데이트되면서 뷰가 업데이트되고, 뷰가 업데이트되면서 모델이 업데이트될 때 작동한다. 이로 인해 애플리케이션 모델의 데이터가 UI와 항상 동기화 할 수 있다. {{message}} input 창에 데이터를 입력해보면 v-model로 message가 바인딩되어 있어서 바로바로 입력한 값이 나온다. 입력할 때마다 변경되는 것 말고 다 입력한 후에 변경하고 싶으면 수식어로 ".lazy"라는 걸 사용할 수 있다. {{message}} 이렇게 하면 모두 입력 후 포커스가 input 창에서 벗어나면 그때 변경된다. v-once (단방향 데이터 바인딩) 하나의 요소나 컴포넌트를 딱 한 번만 렌더링 한다. 렌더..

VueJS 2021.01.21