일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 정리
- javascript
- AWS
- vsCode
- react
- 신상마켓
- Firebase
- Docker
- 로그인
- PWA
- login
- vuex
- react-query
- 셋팅
- 회고록
- vue login
- plugin
- 플러그인
- 토이프로젝트
- jwt
- database
- nginx
- 기획
- 프론트
- express
- extension
- 배포
- 뷰
- Git
- vue
- Today
- Total
목록vue (19)
강디너의 개발 일지
목적 특정 페이지를 들어갈 때 비밀번호를 입력하고 맞을 경우에만 들여보내고 싶다. 아무 생각 없이 비밀번호를 입력해야지만 들어갈 수 있는 페이지를 어떻게 만들까 하다가 대충 생각했을 때에는 confrim 창처럼 그냥 비밀번호 뚜다닥 입력하고 맞으면 들여보내면 될 거라 생각했는데 옛날 옛적 자바 했을 때 알림창이었.... 던 것 같기도 하고 어디서 봤지... 역시 그런 건 없.... 너무 대충 생각했나.... (있으면 알려주세요) 그다음 생각한 것이 API 키를 두는 것처럼 키 파일 하나 만들고 비교하고 라우터 태우면 될 것 같아서 바로 작업 시작! 우선 비밀번호 파일을 만들어줍니다. loungeKey.js const loungeKey = '-----'; export default loungeKey; .g..
1. CSS scope 2. vue custom event CSS scope Vue에서 css범위 설정에는 global, scope로 하는 방식 두 가지 있습니다. global로 설정하면 부모, 자식뿐만 아니라 모오오오든 파일에 적용되기 때문에 보통 가장 최상위에서 reset css 등에 넣음 scope로 설정하면 그 컴포넌트 안에 있는 DOM만 적용됩니다. 잘못 알고 있던 점 scope로 설정하면 부모에서 설정한 css가 자식에도 적용되는 줄 알았습니다. 공통으로 들어가는 자식들에게만 css를 적용하고 싶은데, global 설정으로 하기엔 너무 범위가 넓어서... 부모 단에서 scope로 설정하면 css 적용이 되길래 !!! 되길래애 !!! 적용되긴 합니다.. 다만 최상위 DOM에만 적용됩니다. 아래 ..
동적 컴포넌트란 컴포넌트를 동적 또는 비동기로 변경하고 싶을 때 v-bind:is를 사용하는 기능입니다. 이번 포스팅에서 보여드릴 예제는 router에서 특정 meta를 이용하여 레이아웃을 만들어보겠습니다. 프로젝트 기본 구성 짧게 설명드리자면 App 바로 아래 Layout을 둔 다음 slot으로 router-view를 둔 것입니다. App.vue router/index.js import Vue from 'vue'; import VueRouter from 'vue-router'; import Home from '../views/Home'; import MyPage from '../views/MyPage'; import Lounge from '../views/Lounge'; Vue.use(VueRouter..
Composition API는 Vue3에 도입되는 함수 기반 API 입니다. Composition API를 소개하는 페이지에서는 아래와 같이 설명하고 있습니다. 컴포지션 API 소개 : 구성 요소 논리를 유연하게 구성 할 수있는 추가 기능 기반 API 세트입니다. 중요한것은 Vue2에서도 나중에 나올 Vue3의 문법을 사용할 수 있도록 만든것이 Composition API 입니다. Vue2에서 Vue3 로 버전이 올라가면서 바뀌는 것이 많습니다. (Lifecycle, 문법 등) Vue의 단점이라고 말하는 '프로젝트 규모가 커질수록 관리하기 힘들다' 하는 점을 Composition API로 보안했습니다. 기존 Vue2에서는 data, methods, watch 등등 프로젝트 규모가 커질수록, 컴포넌트 안에..
기획 PWA를 이용한 위치 저장 어플리케이션 만들기 - Vue 이용한 페이지 제작 - Firebase 를 이용한 호스팅 + DB 저장 목차 1. vue-cli4 Setting 2. Firebase Setting 1. vue-cli Setting 설정 중 PWA 설정 도와주는 옵션이 있습니다. 설정해주시면 편합니다. 2. Firebase Setting Window에서 firebase-tools 를 설치하려면 까다롭습니다. 글로벌로 설치해서 사용하라고 적혀있는데, Window에서는 권한이 없다고 막혀버립니다. 그래서 찾아본 결과, 독립형 실행 프로그램을 다운로드 후 설치해서 firebase-tools 를 이용하거나 nvm-window를 설치해서 버전 관리해서 사용하는 방법 두 가지입니다. https://gi..
딜리셔스에 입사해서 크게 2가지의 업무를 했습니다. 1. 로그인 페이지 만들기 2. 기존 php 프로젝트를 Vue 컨버팅 작업 로그인 페이지 만들기 처음으로 메인으로 맡은 큰 프로젝트였으며 원래 있던 로그인 페이지를 개편하는 작업이었습니다. 기존 로그인 페이지는 정말 로그인 기능만 있었다면, 개편될 로그인 페이지는 딜리셔스 서비스인 신상마켓의 소개가 들어가서 디자이너와 협업이 많이 필요한 프로젝트였습니다. 기획 한분, 디자이너 두 분, 개발 저 한 명이 메인이었으며, 개발만 약 한 달 동안 진행했습니다. 회사에서 처음으로 디자이너분들과 협업해서 헤멘것도 있지만, QA를 같이 하면서 엄청 왔다 갔다 하면서 대화하고 친해지게 된 계기가 됐습니다. 상용 서버에 배포 후 준호님(대표님)이 칼같이 QA를 해주셔서..
예전에는 filters 라는 메소드가 없어서 ? 못찾아서 ? 못사용했는데, 최근에 뷰에 대해 공부하다 보니 있었다. filters 기능을 몰랐던 당시에는 methods, watch 에 넣어서 사용했었는데 구분 할 수 있을것 같다 {{arr | comma}} 1. 로컬 필터 data(){ return{ commaTest: [14000,1231244,1231244566,42134324,21312], } }, filters:{ comma(val){ return String(val).replace(/\B(?=(\d{3})+(?!\d))/g, ","); } } 2. 전역 필터 {{arr | makeComma}} Vue.config.productionTip = false; Vue.config.silent = tru..
1. 한글 방지 input 만들기 data(){ return{ userInfo:'', onlyNumber:'', } }, watch:{ userInfo(val){ const reg = /[ㄱ-ㅎ|ㅏ-ㅣ|가-힣]/; if(reg.exec(val)!==null){ return this.userInfo = this.userInfo.slice(0,-1); } } } 2. 숫자만 입력 가능한 input 만들기 watch:{ onlyNumber(){ return this.onlyNumber = this.onlyNumber.replace(/[^0-9]/g, ''); } },
문제점 : 한 파일의 용량이 커서 페이지가 늦게 뜨는 현상이 발생했다. 상황 1. About.vue 안에 header.vue, main.vue, 기타1 기타2 등등 들어있음. 2. 메인, 기타1, 기타2 등등 이미지 용량이 커서 About.vue를 불러오면 너무 오래걸림 (약15초) 3. 빌드를 통해 js 형태로 배포하는데 js의 크기가 커서 분리시키기로 결심 해결 방안 1. webpackchunkname https://router.vuejs.org/kr/guide/advanced/lazy-loading.html 지연된 로딩 | Vue Router 지연된 로딩 번들러를 이용하여 앱을 제작할 때 JavaScript 번들이 상당히 커져 페이지로드 시간에 영향을 줄 수 있습니다. 각 라우트의 컴포넌트를 별도의..
우선 Vue Event Bus 사용에는 두가지 방법이 있습니다. - 직접 Event Bus를 만들고 import 해서 사용하는 방법 - Vue에 내장되어있는 Event Bus 를 이용하는 방법 import 해서 사용하는 방법 장점 : 부모-자식 사이가 아니여도 사용이 가능하다. 너무 편하다. 단점 : 너무 많이 쓰이면 후에 관리하기 힘들다(찾기 힘들다) 1. Event Bus // EventBus.js import Vue from 'vue'; const EventBus = new Vue(); export default EventBus; 2. $emit 이벤트 호출 $emit('이벤트 이름', option) option에 값을 넣어서 보낼 수 있다. HelloWorld Change Component 3. ..