Front-end 35

Vue) 다음 주소 API 적용하기. 다음 주소 우편번호 검색

Vue에 주소 검색을 하여 주소를 가져오는 다음API를 적용하려 한다. 다른 사이트에서도 제일 많이 봤던 API일 것이다. 공식문서 https://postcode.map.daum.net/guide Daum 우편번호 서비스 우편번호 검색과 도로명 주소 입력 기능을 너무 간단하게 적용할 수 있는 방법. Daum 우편번호 서비스를 이용해보세요. 어느 사이트에서나 무료로 제약없이 사용 가능하답니다. postcode.map.daum.net 1. index.html에 스크립트 추가 공식문서에 사용방법이 아주 친절하게 나와있다. 2. 사용할 페이지에 HTML, 함수 입력 기본주소 주소찾기

Front-end/Vue.js 2024.04.13

Vue) 오류 Extraneous non-emits event listeners (함수명) were passed to component but...

Vue3 에서 부모-자식 컴포넌트로 emit을 쓰고 있는데 콘솔창에 아래와 같은 warning 이 떴다. [Vue warn]: Extraneous non-emits event listeners (함수명) were passed to component but could not be automatically inherited because component renders fragment or text root nodes. If the listener is intended to be a component custom event listener only, declare it using the "emits" option. 함수는 작동이 잘 되지만 워닝은 최대한 안뜨는게 좋기에 원인을 찾아봤다. 1) 부모 컴포넌트에..

Front-end/Vue.js 2024.02.27

Vue) 자식 -> 부모 컴포넌트에 데이터 넘기기. 부모 컴포넌트에 파라미터 넘기기 emit 사용 방법

자식 컴포넌트에서 부모 컴포넌트에게 데이터를 넘기고자 한다. 부모 컴포넌트의 함수를실행시키는 방법과, 파라미터 여러 개는 어떻게 넘기는지 알아보자. 구조 /* 부모 컴포넌트 */ export default { ...(생략)... ,methods: { testFunc(파라미터1, 파라미터2) { console.log("자식에서 실행명령받음!") } } } // 자식 컴포넌트 export default { ...(생략)... ,methods: { changeNum() { this.$emit('setDate', 파라미터1, 파라미터2); } } } 파라미터 넘기기 부모 컴포넌트에서 자식컴포넌트 태그에 @함수명A = "함수명B" 를 입력한다. ex) 여기서 '함수명A' 는 자식의 호출을 알아차리기 위한 이름이고..

Front-end/Vue.js 2024.02.27

Vue) Property " " was accessed during render but is not defined on instance. 오류 원인 및 해결

부모 컴포넌트에서 자식에게 props를 전달했는데 콘솔창에 아래와 같은 오류가 뜨면서 파라미터에 undefinded 가 떴다. Property " " was accessed during render but is not defined on instance 원인은 넘길때 파라미터 타입을 지정해주지 않아서였다. S라는 문자열을 넘기고 싶었는데 변수도 아니면서 그냥 쌩으로 적어버린거... 알고보니 멍청한 내 실수였다..ㅋㅋ S를 문자열로 인식하게끔 ' ' 따옴표를 넣어주었다. ㅎ... // 오류 코드 // 수정 코드 변수를 넣었는데도 해당오류가 뜬다면 부모 컴포넌트에서 해당 변수에 값이 잘 들어있는지 확인하고, 자식 컴포넌트에서도 잘 받아왔는지 확인해보자. // 자식 컴포넌트 export default { pr..

Front-end/Vue.js 2024.02.23

Vue) Chart.js update 안됨. chart.js update not working, canvas is already in use

상황 검색해서 나온 데이터들을 chart로 보여주는데, 같은 페이지 내 검색 조건을 다르게 해서 데이터가 달라질 경우 chart를 다시 띄우는데 새로 그려지지가 않는다. 처음에는 canvas is already in use 오류를 만났고 다음에는 차트가 변경되지 않는 오류를 만났다. 오류 설명 canvas is already in use 는 차트가 이미 있는데 또 New Chart()로 생성을 하려고 해서 생긴 오류다. New Chart()는 처음만들때 한번만 가능하고, 이미 같은 차트가 있는데 또 생성을 할 수는 없다. 재 생성하려면 기존 차트를 없애야 한다. 차트가 변경되지 않는 이유는 분병 리스트의 데이터 값는 달라졌는데 차트가 그대로 유지가된다. 해결방법 1) 차트를 아예 없애고 다시 생성하기 -..

Front-end/Vue.js 2023.12.20

HTML&CSS) CSS 말 줄임 ...표시. 한줄 말줄임, 두줄 말줄임

어떤 칸에 글자가 너무 많은데 자리는 한정적일때 말 줄임을 쓰곤 한다. 이 말줄임 표시를 해보자. 네이버 메인화면에서 예시를 가져왔다. 광고아님! 스타일을 입혔더니 이렇게 한줄로 줄여진다. .text_test { text-overflow: ellipsis; display: -webkit-box; -webkit-box-orient: vertical; overflow: hidden; -webkit-line-clamp: 1; } 여기서 -webkit-line-clamp 을 2로 하면 두 줄로 말줄임이 된다.

Front-end/HTML&CSS 2023.09.13

Vue) Vue3 그래프 그리기 chart.js 적용 방법. 막대그래프, 꺽은선그래프

Vue 프로젝트에 데이터 시각화를 위해 그래프를 붙이고 싶었다. 찾아보니 chart.js 가 있었고, 제일 많이 추천하는 오픈 소스 라이브러리였다. - 무료 - Js, HTML5, Canvas 기반 - 반응형 지원 이 세가지만 봐도 사용하기 충분했다. 사이트 : https://www.chartjs.org/ Chart.js Simple yet flexible JavaScript charting library for the modern web www.chartjs.org 1. chart.js 설치하기 npm install chart.js pakage.json 에 가서 버전을 확인하자. 버전을 따로 지정하지 않았으면 아마 최신버전이 설치됐을것이다. 나는 4.4.0이다. 2. 기본 Bar 차트 만들어보기 우선 ..

Front-end/Vue.js 2023.09.08

HTML&CSS) 체크박스 눌렀을때 라벨에 CSS 변경하기. input 체크시 라벨 스타일 변경, checkbox label 변경

체크박스나 라디오버튼의 input을 누르면 라벨 style을 변경하고 싶었다. 예를들어 아래와 같은! 구글링 해보니 CSS에 + 연산자를 쓸 수 있었다. input[type=checkbox]:checked + label { background-color: orange; } 근데... 동작하지 않았다. + label 없애고 앞부분만 쓰면 잘 적용됐는데 "+ label" 만 붙이면 동작을 안했다. 뭐가 문제지.. vue 프로젝트로 하고있는데 vue에서는 지원 안하는건지 이리저리 찾다가 원인을 찾았다. +label 을 하려면 태그가 태그 뒤에 있어야 한다. 계속 보다보니 다른 글에서는 다 label과 input이 따로따로였다. 나는 label이 input을 감싼 상태였어서 적용이 안된거였다. 내 코드 가나다 ..

Front-end/HTML&CSS 2023.08.14

Vue) 절대경로 설정하기 @절대경로 사용할 수 있도록 설정

상대경로 : ../../assets/images/logo.png 절대경로 : @/assets/images/logo.png 상대경로는 현재페이지 기준으로 경로를 작성해야되므로 얼마나 ../을 써야할지 볼때 너무 귀찮다. 그래서 복붙하기도 좋은 절대경로를 쓰는게 좋다. 절대경로 Alias 설정 vue 설정파일을 연다. 나는 webpack.config.js 인데 각각 프로젝트별로 vue.config.js일수도있고, jsconfig.js일수도 있고 무튼 vue 루트 설정파일에서 작업한다. module.exports = { resolve: { alias: { '@': path.join(__dirname, 'src/') } }, } 너무 간단하다. 위와 같이 적어주면된다. configureWebpack: { res..

Front-end/Vue.js 2023.08.08
반응형